21 Dec, 2012
28 commits
-
NFS appears to use d_obtain_alias() to create the root dentry rather than
d_make_root. This can cause 'prepend_path()' to complain that the root
has a weird name if an NFS filesystem is lazily unmounted. e.g. if
"/mnt" is an NFS mount then{ cd /mnt; umount -l /mnt ; ls -l /proc/self/cwd; }
will cause a WARN message like
WARNING: at /home/git/linux/fs/dcache.c:2624 prepend_path+0x1d7/0x1e0()
...
Root dentry has weird name <>to appear in kernel logs.
So change d_obtain_alias() to use "/" rather than "" as the anonymous
name.Signed-off-by: NeilBrown
Cc: Trond Myklebust
Cc: Al Viro
Cc:
Signed-off-by: Andrew Morton
Signed-off-by: Al Viro -
Commit 8e22cc88d68ca1a46d7d582938f979eb640ed30f removes the (un)lock_super
function definitions but forgets to remove their prototypes.Signed-off-by: Alessio Igor Bogani
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Reviewed-by: Anton Altaparmakov
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Acked-by: Bob Copeland
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Reviewed-by: Jan Kara
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
Removed vmtruncate
Signed-off-by: Marco Stornelli
Signed-off-by: Al Viro -
File descriptors (even those for writing) do not hold freeze protection.
Thus mark_files_ro() must call __mnt_drop_write() to only drop protection
against remount read-only. Calling mnt_drop_write_file() as we do now
results in:[ BUG: bad unlock balance detected! ]
3.7.0-rc6-00028-g88e75b6 #101 Not tainted
-------------------------------------
kworker/1:2/79 is trying to release lock (sb_writers) at:
[] mnt_drop_write+0x24/0x30
but there are no more locks to release!Reported-by: Zdenek Kabelac
CC: stable@vger.kernel.org
Signed-off-by: Jan Kara
Signed-off-by: Al Viro -
The code that relied on that flag was ripped out of btrfs quite some
time ago, and never added back. Josef indicated that he was going to
take a different approach to the problem in btrfs, and that we
could just eliminate this flag.Cc: Josef Bacik
Signed-off-by: Jeff Layton
Signed-off-by: Al Viro -
Signed-off-by: Al Viro
-
When path_init is called with a valid dfd, that code checks permissions
on the open directory fd and returns an error if the check fails. This
permission check is redundant, however.Both callers of path_init immediately call link_path_walk afterward. The
first thing that link_path_walk does for pathnames that do not consist
only of slashes is to check for exec permissions at the starting point of
the path walk. And this check in path_init() is on the path taken only
when *name != '/' && *name != '\0'.In most cases, these checks are very quick, but when the dfd is for a
file on a NFS mount with the actimeo=0, each permission check goes
out onto the wire. The result is 2 identical ACCESS calls.Given that these codepaths are fairly "hot", I think it makes sense to
eliminate the permission check in path_init and simply assume that the
caller will eventually check the permissions before proceeding.Reported-by: Dave Wysochanski
Signed-off-by: Jeff Layton
Signed-off-by: Al Viro -
The compiler may optimize the while loop and make the check just be done once,
so we should use ACCESS_ONCE() to guard access to ->mnt_flagsSigned-off-by: Miao Xie
Signed-off-by: Al Viro
20 Dec, 2012
12 commits
-
Pull sparc fixes from David Miller:
"Please pull to get these sparc AES/DES/CAMELLIA crypto bug fixes as
well as an addition of a pte_accessible() define for sparc64 and a
hugetlb fix from Dave Kleikamp."* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
sparc64: Set CRYPTO_TFM_REQ_MAY_SLEEP consistently in CAMELLIA code.
sparc64: Set CRYPTO_TFM_REQ_MAY_SLEEP consistently in DES code.
sparc64: Fix ECB looping constructs in AES code.
sparc64: Set CRYPTO_TFM_REQ_MAY_SLEEP consistently in AES code.
sparc64: Fix AES ctr mode block size.
sparc64: Fix unrolled AES 256-bit key loops.
sparc64: Define pte_accessible()
sparc: huge_ptep_set_* functions need to call set_huge_pte_at() -
Pull networking fixes from David Miller:
1) Really fix tuntap SKB use after free bug, from Eric Dumazet.
2) Adjust SKB data pointer to point past the transport header before
calling icmpv6_notify() so that the headers are in the state which
that function expects. From Duan Jiong.3) Fix ambiguities in the new tuntap multi-queue APIs. From Jason
Wang.4) mISDN needs to use del_timer_sync(), from Konstantin Khlebnikov.
5) Don't destroy mutex after freeing up device private in mac802154,
fix also from Konstantin Khlebnikov.6) Fix INET request socket leak in TCP and DCCP, from Christoph Paasch.
7) SCTP HMAC kconfig rework, from Neil Horman.
8) Fix SCTP jprobes function signature, otherwise things explode, from
Daniel Borkmann.9) Fix typo in ipv6-offload Makefile variable reference, from Simon
Arlott.10) Don't fail USBNET open just because remote wakeup isn't supported,
from Oliver Neukum.11) be2net driver bug fixes from Sathya Perla.
12) SOLOS PCI ATM driver bug fixes from Nathan Williams and David
Woodhouse.13) Fix MTU changing regression in 8139cp driver, from John Greene.
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (45 commits)
solos-pci: ensure all TX packets are aligned to 4 bytes
solos-pci: add firmware upgrade support for new models
solos-pci: remove superfluous debug output
solos-pci: add GPIO support for newer versions on Geos board
8139cp: Prevent dev_close/cp_interrupt race on MTU change
net: qmi_wwan: add ZTE MF880
drivers/net: Use of_match_ptr() macro in smsc911x.c
drivers/net: Use of_match_ptr() macro in smc91x.c
ipv6: addrconf.c: remove unnecessary "if"
bridge: Correctly encode addresses when dumping mdb entries
bridge: Do not unregister all PF_BRIDGE rtnl operations
use generic usbnet_manage_power()
usbnet: generic manage_power()
usbnet: handle PM failure gracefully
ksz884x: fix receive polling race condition
qlcnic: update driver version
qlcnic: fix unused variable warnings
net: fec: forbid FEC_PTP on SoCs that do not support
be2net: fix wrong frag_idx reported by RX CQ
be2net: fix be_close() to ensure all events are ack'ed
... -
Pull drm bugfix from Dave Airlie:
"Just a single urgent regression fix, seeing a few wierd behaviours I'd
like not to persist."* 'drm-next' of git://people.freedesktop.org/~airlied/linux:
drm/ttm: fix delayed ttm_bo_cleanup_refs_and_unlock delayed handling -
Pull random updates from Ted Ts'o:
"A few /dev/random improvements for the v3.8 merge window."* tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random:
random: Mix cputime from each thread that exits to the pool
random: prime last_data value per fips requirements
random: fix debug format strings
random: make it possible to enable debugging without rebuild -
We use the FPU and therefore cannot sleep during the crypto
loops.Signed-off-by: David S. Miller
-
We use the FPU and therefore cannot sleep during the crypto
loops.Signed-off-by: David S. Miller
-
Things works better when you increment the source buffer pointer
properly.Signed-off-by: David S. Miller
-
We use the FPU and therefore cannot sleep during the crypto
loops.Signed-off-by: David S. Miller
-
Like the generic versions, we need to support a block size
of '1' for CTR mode AES.This was discovered thanks to all of the new test cases added by
Jussi Kivilinna.Signed-off-by: David S. Miller
-
The basic scheme of the block mode assembler is that we start by
enabling the FPU, loading the key into the floating point registers,
then iterate calling the encrypt/decrypt routine for each block.For the 256-bit key cases, we run short on registers in the unrolled
loops.So the {ENCRYPT,DECRYPT}_256_2() macros reload the key registers that
get clobbered.The unrolled macros, {ENCRYPT,DECRYPT}_256(), are not mindful of this.
So if we have a mix of multi-block and single-block calls, the
single-block unrolled 256-bit encrypt/decrypt can run with some
of the key registers clobbered.Handle this by always explicitly loading those registers before using
the non-unrolled 256-bit macro.This was discovered thanks to all of the new test cases added by
Jussi Kivilinna.Signed-off-by: David S. Miller
-
The FPGA can't handled unaligned DMA (yet). So copy into an aligned buffer,
if skb->data isn't suitably aligned.Signed-off-by: David Woodhouse
Signed-off-by: David S. Miller