mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 21:51:40 +00:00
A few small fixes
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEIodevzQLVs53l6BhNqiEXrVAjGQFAmTwrykACgkQNqiEXrVA jGSIxg/9EkmkMiFyAFymr1EYVavngY7RsTwG4CpCv3jKCthjrsBi5PN9whJPTfBg FCV3tvzGSk8pIpEADqywuYp9+e+0/gqNwExlyr1+JCatPtXeFpBN8yJN/a2u7zon +CXmcSn6veKuVHWptBdxoQVwjjhznw12psa+kPiGPe/q4uZyFIvVAnDUkEeURV3f dT7yOG6KEMMq7NZis1t2Tf9fuflzYpKOmF7qzTWAGOCXhbJbHWB51wMpFKJSyqP8 kxZQ9GvdjDMnI3V+IbV7WktN07ztGGiJ3SGRNuQFbkL8xCf6KTySgGnieTj8vBod lg/UFEZrd2ZL9f+hUTyWeta+dhEVAAqnUJpMuyfMWBGg1ae4U6IO2t+Q7xM1zGLg qGHfxka9C5tvKToldLsaoFBfW+9+KxCxyrI25FkxSXzJBJWnSaq/IC1/QEbubqiY 2zAD7hh/B8c3rzLIwIfGptRDoeMu8yiWx3I5jISZHZG5Azkui1VqC7slXCpcqhLF 7PoJHZ4hemK2zkPwCjZ914lHuCtePDtvvHkEL5G1tK8kW3e9k1Sk314zck69Oyjw IuXICm14Qu5Pp8QLBrXTzXenoUXKiIwm+GIW7UkIzGRrKaLCMc8YyDvvdp4UoG5H Pg+8Y93P/fvRbRcfm9jk1BWqaUFuIWRyzxQnMv8pN1xxabrgnGQ= =W5Xa -----END PGP SIGNATURE----- Merge tag 'jfs-6.6' of github.com:kleikamp/linux-shaggy Pull jfs updates from Dave Kleikamp: "A few small fixes" * tag 'jfs-6.6' of github.com:kleikamp/linux-shaggy: jfs: validate max amount of blocks before allocation. jfs: remove redundant initialization to pointer ip jfs: fix invalid free of JFS_IP(ipimap)->i_imap in diUnmount FS: JFS: (trivial) Fix grammatical error in extAlloc fs/jfs: prevent double-free in dbUnmount() after failed jfs_remount()
This commit is contained in:
commit
7e5cd6f697
@ -269,6 +269,7 @@ int dbUnmount(struct inode *ipbmap, int mounterror)
|
||||
|
||||
/* free the memory for the in-memory bmap. */
|
||||
kfree(bmp);
|
||||
JFS_SBI(ipbmap->i_sb)->bmap = NULL;
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
@ -166,7 +166,7 @@ extAlloc(struct inode *ip, s64 xlen, s64 pno, xad_t * xp, bool abnr)
|
||||
/*
|
||||
* COMMIT_SyncList flags an anonymous tlock on page that is on
|
||||
* sync list.
|
||||
* We need to commit the inode to get the page written disk.
|
||||
* We need to commit the inode to get the page written to the disk.
|
||||
*/
|
||||
if (test_and_clear_cflag(COMMIT_Synclist,ip))
|
||||
jfs_commit_inode(ip, 0);
|
||||
@ -311,6 +311,11 @@ extBalloc(struct inode *ip, s64 hint, s64 * nblocks, s64 * blkno)
|
||||
* blocks in the map. in that case, we'll start off with the
|
||||
* maximum free.
|
||||
*/
|
||||
|
||||
/* give up if no space left */
|
||||
if (bmp->db_maxfreebud == -1)
|
||||
return -ENOSPC;
|
||||
|
||||
max = (s64) 1 << bmp->db_maxfreebud;
|
||||
if (*nblocks >= max && *nblocks > nbperpage)
|
||||
nb = nblks = (max > nbperpage) ? max : nbperpage;
|
||||
|
@ -193,6 +193,7 @@ int diUnmount(struct inode *ipimap, int mounterror)
|
||||
* free in-memory control structure
|
||||
*/
|
||||
kfree(imap);
|
||||
JFS_IP(ipimap)->i_imap = NULL;
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
@ -883,7 +883,7 @@ static int jfs_symlink(struct mnt_idmap *idmap, struct inode *dip,
|
||||
struct component_name dname;
|
||||
u32 ssize; /* source pathname size */
|
||||
struct btstack btstack;
|
||||
struct inode *ip = d_inode(dentry);
|
||||
struct inode *ip;
|
||||
s64 xlen = 0;
|
||||
int bmask = 0, xsize;
|
||||
s64 xaddr;
|
||||
|
Loading…
Reference in New Issue
Block a user