Jeff Garzik [Mon, 25 Sep 2006 19:33:09 +0000 (15:33 -0400)]
[libata] No need for all those arch libata-portmap.h headers
They all contain the same thing. Instead, have a single generic one in
include/asm-generic, and permit an arch to override as needed.
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Al Viro [Mon, 25 Sep 2006 01:57:57 +0000 (02:57 +0100)]
[PATCH] pata_pdc2027x iomem annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 25 Sep 2006 01:57:22 +0000 (02:57 +0100)]
[PATCH] fix idiocy in asd_init_lseq_mdp()
To whoever had written that code:
a) priority of >> is higher than that of &
b) priority of typecast is higher than that of any binary operator
c) learn the fscking C
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 25 Sep 2006 01:55:40 +0000 (02:55 +0100)]
[PATCH] SCSI gfp_t annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 25 Sep 2006 01:54:46 +0000 (02:54 +0100)]
[PATCH] wrong thing iounmapped (qla3xxx)
ql3xxx_probe() does ioremap and stores result in ->mem_map_registers.
On failure exit it does iounmap() of the same thing.
OTOH, ql3xxx_remove() does iounmap() of ->mmap_virt_base which is
(a) never assigned and
(b) never used other than in that iounmap() call.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 25 Sep 2006 01:53:53 +0000 (02:53 +0100)]
[PATCH] qla3xxx iomem annotations
the driver is still shite, though...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Matthew Wilcox [Mon, 25 Sep 2006 02:22:52 +0000 (20:22 -0600)]
[PATCH] Revert ABI-breaking change in /proc
Some user tools parse /proc/scsi/scsi, so we can't yet change the names.
Change the existing ones back to their old names, and add an admonition
to not make the same mistake that I did.
Andrew Morton reports that this was breaking YDL 4.1 userspace.
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Sun, 24 Sep 2006 22:55:22 +0000 (15:55 -0700)]
Merge git://git.infradead.org/~dwmw2/khdrs-2.6
* git://git.infradead.org/~dwmw2/khdrs-2.6:
Don't remove $(INSTALL_HDR_PATH)/install before headers_install.
Al Viro [Sun, 24 Sep 2006 22:45:29 +0000 (23:45 +0100)]
[PATCH] missing include (free_irq() use)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 24 Sep 2006 22:42:57 +0000 (23:42 +0100)]
[PATCH] NULL noise removal
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 24 Sep 2006 22:42:20 +0000 (23:42 +0100)]
[PATCH] fix iptables __user misannotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 24 Sep 2006 22:41:42 +0000 (23:41 +0100)]
[PATCH] netlabel gfp annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 24 Sep 2006 22:41:00 +0000 (23:41 +0100)]
[PATCH] libata won't build on SUN4
marked as such...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 24 Sep 2006 22:40:00 +0000 (23:40 +0100)]
[PATCH] libata won't build on m68k and m32r
no ioread*(), for one thing
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 24 Sep 2006 22:39:25 +0000 (23:39 +0100)]
[PATCH] restore libata build on frv
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
David Woodhouse [Sun, 24 Sep 2006 22:44:57 +0000 (23:44 +0100)]
Don't remove $(INSTALL_HDR_PATH)/install before headers_install.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Linus Torvalds [Sun, 24 Sep 2006 22:28:50 +0000 (15:28 -0700)]
Merge branch 'upstream-linus' of git://git./linux/kernel/git/mfasheh/ocfs2
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: (28 commits)
ocfs2: Teach ocfs2_drop_lock() to use ->set_lvb() callback
ocfs2: Remove ->unblock lockres operation
ocfs2: move downconvert worker to lockres ops
ocfs2: Remove unused dlmglue functions
ocfs2: Have the metadata lock use generic dlmglue functions
ocfs2: Add ->set_lvb callback in dlmglue
ocfs2: Add ->check_downconvert callback in dlmglue
ocfs2: Check for refreshing locks in generic unblock function
ocfs2: don't unconditionally pass LVB flags
ocfs2: combine inode and generic blocking AST functions
ocfs2: Add ->get_osb() dlmglue locking operation
ocfs2: remove ->unlock_ast() callback from ocfs2_lock_res_ops
ocfs2: combine inode and generic AST functions
ocfs2: Clean up lock resource refresh flags
ocfs2: Remove i_generation from inode lock names
ocfs2: Encode i_generation in the meta data lvb
ocfs2: Free up some space in the lvb
ocfs2: Remove special casing for inode creation in ocfs2_dentry_attach_lock()
ocfs2: manually d_move() during ocfs2_rename()
[PATCH] Allow file systems to manually d_move() inside of ->rename()
...
Linus Torvalds [Sun, 24 Sep 2006 21:55:52 +0000 (14:55 -0700)]
Merge git://git.infradead.org/~dwmw2/khdrs-2.6
* git://git.infradead.org/~dwmw2/khdrs-2.6:
New 'make headers_install_all' target.
Use dependencies for 'make headers_install'.
[S390] Unexport <asm/z90crypt.h>, export <asm/zcrypt.h> in its place.
Remove dead netfilter_logging.h from include/linux/Kbuild
Remove offsetof() from user-visible <linux/stddef.h>
Clean up exported headers on CRIS
Fix v850 exported headers
Don't advertise (or allow) headers_{install,check} where inappropriate.
Remove UML header export
Remove ARM26 header export.
Fix H8300 exported headers.
Fix m68knommu exported headers
Fix exported headers for SPARC, SPARC64
Fix 'make headers_check' on m32r
Fix 'make headers_check' on sh64
Fix 'make headers_check' on sh
[HEADERS] Fix ARM 'make headers_check'
Initial pass of manual conflict resolution in top-level Makefile over
conflicting build rule and headers_install changes.
Linus Torvalds [Sun, 24 Sep 2006 21:24:14 +0000 (14:24 -0700)]
Merge git://git./linux/kernel/git/sam/kbuild
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (28 commits)
kbuild: add distclean info to 'make help' and more details for 'clean'
dontdiff: add utsrelease.h
kbuild: fix "mkdir -p" usage in scripts/package/mkspec
kbuild: correct and clarify versioning info in Makefile
kbuild: fixup Documentation/kbuild/modules.txt
kbuild: Extend kbuild/defconfig tags support to exuberant ctags
kbuild: fix for some typos in Documentation/makefiles.txt
kbuild: clarify "make C=" build option
Documentaion: update Documentation/Changes with minimum versions
kbuild: update help in top level Makefile
kbuild: fail kernel compilation in case of unresolved module symbols
kbuild: remove debug left-over from Makefile.host
kbuild: create output directory for hostprogs with O=.. build
kbuild: add missing return statement in modpost.c:secref_whitelist()
kbuild: preperly align SYSMAP output
kbuild: make -rR is now default
kbuild: make V=2 tell why a target is rebuild
kbuild: modpost on vmlinux regardless of CONFIG_MODULES
kbuild: ignore references from ".pci_fixup" to ".init.text"
kbuild: linguistic fixes for Documentation/kbuild/makefiles.txt
...
Jesper Juhl [Sun, 24 Sep 2006 12:01:08 +0000 (14:01 +0200)]
kbuild: add distclean info to 'make help' and more details for 'clean'
Add distclean info, that was previously missing, to 'make help'.
Also add a few more details to the 'make clean' help text.
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Randy Dunlap [Fri, 22 Sep 2006 19:37:56 +0000 (12:37 -0700)]
dontdiff: add utsrelease.h
Add auto-generated utsrelease.h to dontdiff file.
Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Rolf Eike Beer [Mon, 14 Aug 2006 06:16:47 +0000 (08:16 +0200)]
kbuild: fix "mkdir -p" usage in scripts/package/mkspec
"mkdir -p" does not only mean not to complain if the directory already
exists, but also to create the parent directories if needed. This patch
removes "lib" from the list of directories to create as we will also create
"lib/modules".
Signed-off-by: Rolf Eike Beer <eike-kernel@sf-tec.de>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Robert P. J. Day [Tue, 12 Sep 2006 16:38:19 +0000 (12:38 -0400)]
kbuild: correct and clarify versioning info in Makefile
The attached patch clarifies the creation of KERNELRELEASE and
corrects an error regarding the use of $(LOCALVERSION).
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Robert P. J. Day [Thu, 21 Sep 2006 13:39:41 +0000 (09:39 -0400)]
kbuild: fixup Documentation/kbuild/modules.txt
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Aron Griffis [Thu, 21 Sep 2006 04:27:02 +0000 (00:27 -0400)]
kbuild: Extend kbuild/defconfig tags support to exuberant ctags
The following patch extends kbuild/defconfig tags support to exuberant
ctags. The previous support is only for emacs ctags/etags programs.
This patch also corrects the kconfig regex for the emacs invocation.
Previously it would miss some instances because it assumed /^config
instead of /^[ \t]*config
Signed-off-by: Aron Griffis <aron@hp.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Bryce Harrington [Wed, 20 Sep 2006 19:43:37 +0000 (12:43 -0700)]
kbuild: fix for some typos in Documentation/makefiles.txt
I noticed a few typos while reading makefiles.txt to learn about the
kbuild system. Attached is a patch against 2.6.18 to fix them.
Remove trailing whitespace while we are there..
Signed-off-by: Bryce Harrington <bryce@osdl.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Robert P. J. Day [Wed, 13 Sep 2006 11:57:50 +0000 (07:57 -0400)]
kbuild: clarify "make C=" build option
Clarify the use of "make C=" in the top-level Makefile, and fix a
typo in the Documentation file.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Robert P. J. Day [Mon, 11 Sep 2006 16:39:19 +0000 (12:39 -0400)]
Documentaion: update Documentation/Changes with minimum versions
Based on conversations with greg kh (and noticing a simple typo),
these are the actual minimal versions for 2.6.18.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Robert P. J. Day [Mon, 11 Sep 2006 16:09:42 +0000 (12:09 -0400)]
kbuild: update help in top level Makefile
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Kirill Korotaev [Thu, 7 Sep 2006 20:08:54 +0000 (13:08 -0700)]
kbuild: fail kernel compilation in case of unresolved module symbols
At stage 2 modpost utility is used to check modules. In case of unresolved
symbols modpost only prints warning.
IMHO it is a good idea to fail compilation process in case of unresolved
symbols (at least in modules coming with kernel), since usually such errors
are left unnoticed, but kernel modules are broken.
- new option '-w' is added to modpost:
if option is specified, modpost only warns about unresolved symbols
- modpost is called with '-w' for external modules in Makefile.modpost
Signed-off-by: Andrey Mirkin <amirkin@sw.ru>
Signed-off-by: Kirill Korotaev <dev@openvz.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Tue, 8 Aug 2006 14:45:41 +0000 (16:45 +0200)]
kbuild: remove debug left-over from Makefile.host
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Mon, 7 Aug 2006 19:55:33 +0000 (21:55 +0200)]
kbuild: create output directory for hostprogs with O=.. build
hostprogs-y only supported creating output directory for the final
program. Extend this to also cover the situation where a .o
file (used when host program is made from compositie objects) is
locate in another directory.
First user of this is the built-in lxdialog that.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Wed, 9 Aug 2006 06:23:55 +0000 (08:23 +0200)]
kbuild: add missing return statement in modpost.c:secref_whitelist()
Noticed by: Magnus Damm <magnus@valinux.co.jp>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Tue, 8 Aug 2006 19:41:18 +0000 (21:41 +0200)]
kbuild: preperly align SYSMAP output
Align filenames for SYSMAP with other filenames
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Tue, 8 Aug 2006 19:36:08 +0000 (21:36 +0200)]
kbuild: make -rR is now default
Do not specify -rR anymore - it is default.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Tue, 8 Aug 2006 19:35:14 +0000 (21:35 +0200)]
kbuild: make V=2 tell why a target is rebuild
tell why a a target got build
enabled by make V=2
Output (listed in the order they are checked):
(1) - due to target is PHONY
(2) - due to target missing
(3) - due to: file1.h file2.h
(4) - due to command line change
(5) - due to missing .cmd file
(6) - due to target not in $(targets)
(1) We always build PHONY targets
(2) No target, so we better build it
(3) Prerequisite is newer than target
(4) The command line stored in the file named dir/.target.cmd
differed from actual command line. This happens when compiler
options changes
(5) No dir/.target.cmd file (used to store command line)
(6) No dir/.target.cmd file and target not listed in $(targets)
This is a good hint that there is a bug in the kbuild file
This patch is inspired by a patch from: Milton Miller <miltonm@bga.com>
Cc: Milton Miller <miltonm@bga.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Tue, 8 Aug 2006 18:43:39 +0000 (20:43 +0200)]
kbuild: modpost on vmlinux regardless of CONFIG_MODULES
Based on patch from: Magnus Damm <magnus@valinux.co.jp>
This has the advantage that all section mismatch checks are run regardless
of modules being enabled or not.
When running modpost on vmlinux output:
MODPOST vmlinux
When running modpost on modules output count of modules like this:
MODPOST 5 modules
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Magnus Damm [Tue, 8 Aug 2006 08:32:11 +0000 (17:32 +0900)]
kbuild: ignore references from ".pci_fixup" to ".init.text"
The modpost code is extended to ignore references
from ".pci_fixup" to ".init.text".
Signed-off-by: Magnus Damm <magnus@valinux.co.jp>
Jan Engelhardt [Thu, 27 Jul 2006 20:14:29 +0000 (22:14 +0200)]
kbuild: linguistic fixes for Documentation/kbuild/makefiles.txt
I have done a look-through through Documentation/kbuild/ and my corrections
(proposed) are attached.
Cc'ed are original author Michael (responsible for comitting changes to
these files?), Sam (kbuild maintainer), Adrian (-trivial maintainer).
Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Jan Engelhardt [Thu, 27 Jul 2006 20:14:29 +0000 (22:14 +0200)]
kbuild: linguistic fixes for Documentation/kbuild/modules.txt
I have done a look-through through Documentation/kbuild/ and my corrections
(proposed) are attached.
Cc'ed are original author Michael (responsible for comitting changes to
these files?), Sam (kbuild maintainer), Adrian (-trivial maintainer).
Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Jan Engelhardt [Thu, 27 Jul 2006 20:14:29 +0000 (22:14 +0200)]
kconfig: linguistic fixes for Documentation/kbuild/kconfig-language.txt
I have done a look-through through Documentation/kbuild/ and my corrections
(proposed) are attached.
Cc'ed are original author Michael (responsible for comitting changes to
these files?), Sam (kbuild maintainer), Adrian (-trivial maintainer).
Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Olaf Hering [Wed, 26 Jul 2006 01:42:26 +0000 (18:42 -0700)]
remove RPM_BUILD_ROOT from asm-offsets.h
No file in rpm binary package should have the RPM_BUILD_ROOT string in it.
To simplify building of external modules, our kernel-source package
contains some temp files from the Kbuild system. asm/asm-offsets.h is one
of the files that contains the absolute path if make O=$O is used.
* This file was generated by /var/tmp/kernel-source-2.6.14_rc4-build/usr/src/linux-2.6.14-rc4-2/Kbuild
Remove the $RPM_BUILD_ROOT string in the shipped tempfile.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Sun, 23 Jul 2006 18:47:50 +0000 (20:47 +0200)]
kbuild: use in-kernel unifdef
Let headers_install use in-kernel unifdef
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Sun, 23 Jul 2006 18:41:30 +0000 (20:41 +0200)]
kbuild: replace use of strlcpy with a dedicated implmentation in unifdef
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Sun, 23 Jul 2006 18:39:59 +0000 (20:39 +0200)]
kbuild: add unifdef
This patch contains a raw copy of unifdef.c
Next patch will modify it and add infrastructure to use it
Adding unifdef to the kernel is acked by the author.
The reason to add unifdef as part of the kernel source is that it is not
yet a common utility on most distributions.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Sam Ravnborg [Sun, 23 Jul 2006 17:37:44 +0000 (19:37 +0200)]
kbuild: consistently decide when to rebuild a target
Consistently decide when to rebuild a target across all of
if_changed, if_changed_dep, if_changed_rule.
PHONY targets are now treated alike (ignored) for all targets
While add it make Kbuild.include almost readable by factoring out a few
bits to some common variables and reuse this in Makefile.build.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Matthew Wilcox [Thu, 13 Jul 2006 18:54:07 +0000 (12:54 -0600)]
kconfig: support DOS line endings
Kconfig doesn't currently handle config files with DOS line endings.
While these are, of course, an abomination, etc, etc, it can be handy
to not have to convert them first. It's also a tiny patch and even adds
support for lines ending in just \r or even \n\r.
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
David Woodhouse [Sun, 24 Sep 2006 21:16:03 +0000 (22:16 +0100)]
New 'make headers_install_all' target.
Install headers for _all_ architectures, suitable for making a tarball
release or extracting them for use in a separate package.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
David Woodhouse [Sun, 24 Sep 2006 21:15:14 +0000 (22:15 +0100)]
Use dependencies for 'make headers_install'.
Re-export header files only if either they or their controlling Kbuild
file has actually changed. Also allow for similar dependencies with
'headers_check', once we properly create the dependencies for those.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
David Woodhouse [Sun, 24 Sep 2006 21:07:25 +0000 (22:07 +0100)]
[S390] Unexport <asm/z90crypt.h>, export <asm/zcrypt.h> in its place.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
David Woodhouse [Sun, 24 Sep 2006 21:06:48 +0000 (22:06 +0100)]
Remove dead netfilter_logging.h from include/linux/Kbuild
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
David Woodhouse [Sun, 24 Sep 2006 21:05:59 +0000 (22:05 +0100)]
Merge branch 'master' of git://git./linux/kernel/git/torvalds/linux-2.6
Mark Fasheh [Thu, 14 Sep 2006 21:44:51 +0000 (14:44 -0700)]
ocfs2: Teach ocfs2_drop_lock() to use ->set_lvb() callback
With this, we don't need to pass an additional struct with function pointer.
Now that the callbacks are fully used, comment the remaining API.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Thu, 14 Sep 2006 05:01:16 +0000 (22:01 -0700)]
ocfs2: Remove ->unblock lockres operation
Have ocfs2_process_blocked_lock() call ocfs2_generic_unblock_lock(), which
gets to be ocfs2_unblock_lock() now that it's the only possible unblock
function.
Remove the ->unblock() callback from the structure, and all lock type
specific unblock functions.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Thu, 14 Sep 2006 04:52:21 +0000 (21:52 -0700)]
ocfs2: move downconvert worker to lockres ops
This way lock types don't have to manually pass it to
ocfs2_generic_unblock_lock().
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Thu, 14 Sep 2006 04:41:56 +0000 (21:41 -0700)]
ocfs2: Remove unused dlmglue functions
The meta data unblocking code no longer needs ocfs2_do_unblock_meta() or
ocfs2_can_downconvert_meta_lock(), so remove them.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Thu, 14 Sep 2006 04:39:52 +0000 (21:39 -0700)]
ocfs2: Have the metadata lock use generic dlmglue functions
Fill in the ->check_downconvert and ->set_lvb callbacks with meta data
specific operations and switch ocfs2_unblock_meta() to call
ocfs2_generic_unblock_lock()
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Thu, 14 Sep 2006 04:21:52 +0000 (21:21 -0700)]
ocfs2: Add ->set_lvb callback in dlmglue
This allows a lock type to set the value block before downconvert.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Thu, 14 Sep 2006 04:10:12 +0000 (21:10 -0700)]
ocfs2: Add ->check_downconvert callback in dlmglue
This will allow lock types to force a requeue of a lock downconvert.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Thu, 14 Sep 2006 04:02:29 +0000 (21:02 -0700)]
ocfs2: Check for refreshing locks in generic unblock function
Tidy up the exit path a bit too.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Wed, 13 Sep 2006 05:08:14 +0000 (22:08 -0700)]
ocfs2: don't unconditionally pass LVB flags
Allow a lock type to specifiy whether it makes use of the LVB. The only type
which does this right now is the meta data lock. This should save us some
space on network messages since they won't have to needlessly transmit value
blocks.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Wed, 13 Sep 2006 04:58:23 +0000 (21:58 -0700)]
ocfs2: combine inode and generic blocking AST functions
There is extremely little difference between the two now. We can remove the
callback from ocfs2_lock_res_ops as well.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Wed, 13 Sep 2006 04:49:13 +0000 (21:49 -0700)]
ocfs2: Add ->get_osb() dlmglue locking operation
Will be used to find the ocfs2_super structure from a given lockres.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Wed, 13 Sep 2006 04:36:58 +0000 (21:36 -0700)]
ocfs2: remove ->unlock_ast() callback from ocfs2_lock_res_ops
This was always defined to the same function in all locks, so clean things
up by removing and passing ocfs2_unlock_ast() directly to the DLM.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Wed, 13 Sep 2006 04:34:35 +0000 (21:34 -0700)]
ocfs2: combine inode and generic AST functions
There is extremely little difference between the two now. We can remove the
callback from ocfs2_lock_res_ops as well.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Wed, 13 Sep 2006 04:24:53 +0000 (21:24 -0700)]
ocfs2: Clean up lock resource refresh flags
Use of the refresh mechanism is lock-type wide, so move knowledge of that to
the ocfs2_lock_res_ops structure.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Sat, 23 Sep 2006 00:28:19 +0000 (17:28 -0700)]
ocfs2: Remove i_generation from inode lock names
OCFS2 puts inode meta data in the "lock value block" provided by the DLM.
Typically, i_generation is encoded in the lock name so that a deleted inode
on and a new one in the same block don't share the same lvb.
Unfortunately, that scheme means that the read in ocfs2_read_locked_inode()
is potentially thrown away as soon as the meta data lock is taken - we
cannot encode the lock name without first knowing i_generation, which
requires a disk read.
This patch encodes i_generation in the inode meta data lvb, and removes the
value from the inode meta data lock name. This way, the read can be covered
by a lock, and at the same time we can distinguish between an up to date and
a stale LVB.
This will help cold-cache stat(2) performance in particular.
Since this patch changes the protocol version, we take the opportunity to do
a minor re-organization of two of the LVB fields.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Tue, 12 Sep 2006 22:35:49 +0000 (15:35 -0700)]
ocfs2: Encode i_generation in the meta data lvb
When i_generation is removed from the lockname, this will help us determine
whether a meta data lvb has information that is in sync with the local
struct inode.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Tue, 12 Sep 2006 22:22:18 +0000 (15:22 -0700)]
ocfs2: Free up some space in the lvb
lvb_version doesn't need to be a whole 32 bits. Make it an 8 bit field to
free up some space. This should be backwards compatible until we use one of
the fields, in which case we'd bump the lvb version anyway.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Thu, 21 Sep 2006 23:51:28 +0000 (16:51 -0700)]
ocfs2: Remove special casing for inode creation in ocfs2_dentry_attach_lock()
We can't use LKM_LOCAL for new dentry locks because an unlink and subsequent
re-create of a name/inode pair may result in the lock still being mastered
somewhere in the cluster.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Fri, 8 Sep 2006 21:22:54 +0000 (14:22 -0700)]
ocfs2: manually d_move() during ocfs2_rename()
Make use of FS_RENAME_DOES_D_MOVE to avoid a race condition that can occur
during ->rename() if we d_move() outside of the parent directory cluster
locks, and another node discovers the new name (created during the rename)
and unlinks it. d_move() will unconditionally rehash a dentry - which will
leave stale data in the system.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Fri, 8 Sep 2006 21:22:21 +0000 (14:22 -0700)]
[PATCH] Allow file systems to manually d_move() inside of ->rename()
Some file systems want to manually d_move() the dentries involved in a
rename. We can do this by making use of the FS_ODD_RENAME flag if we just
have nfs_rename() unconditionally do the d_move(). While there, we rename
the flag to be more descriptive.
OCFS2 uses this to protect that part of the rename operation with a cluster
lock.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Mark Fasheh [Fri, 8 Sep 2006 21:21:43 +0000 (14:21 -0700)]
ocfs2: Remove the dentry vote
This is unused now.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Fri, 8 Sep 2006 21:21:03 +0000 (14:21 -0700)]
ocfs2: Hook rest of the file system into dentry locking API
Actually replace the vote calls with the new dentry operations. Make any
necessary adjustments to get the scheme to work.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Fri, 8 Sep 2006 21:43:18 +0000 (14:43 -0700)]
ocfs2: Add dentry tracking API
Replace the dentry vote mechanism with a cluster lock which covers a set
of dentries. This allows us to force d_delete() only on nodes which actually
care about an unlink.
Every node that does a ->lookup() gets a read only lock on the dentry, until
an unlink during which the unlinking node, will request an exclusive lock,
forcing the other nodes who care about that dentry to d_delete() it. The
effect is that we retain a very lightweight ->d_revalidate(), and at the
same time get to make large improvements to the average case performance of
the ocfs2 unlink and rename operations.
This patch adds the higher level API and the dentry manipulation code.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Fri, 8 Sep 2006 21:14:34 +0000 (14:14 -0700)]
ocfs2: Add new cluster lock type
Replace the dentry vote mechanism with a cluster lock which covers a set
of dentries. This allows us to force d_delete() only on nodes which actually
care about an unlink.
Every node that does a ->lookup() gets a read only lock on the dentry, until
an unlink during which the unlinking node, will request an exclusive lock,
forcing the other nodes who care about that dentry to d_delete() it. The
effect is that we retain a very lightweight ->d_revalidate(), and at the
same time get to make large improvements to the average case performance of
the ocfs2 unlink and rename operations.
This patch adds the cluster lock type which OCFS2 can attach to
dentries. A small number of fs/ocfs2/dcache.c functions are stubbed
out so that this change can compile.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Fri, 8 Sep 2006 18:40:10 +0000 (11:40 -0700)]
ocfs2: Update dlmglue for new dlmlock() API
File system lock names are very regular right now, so we really only need to
pass an extra parameter to dlmlock().
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Fri, 8 Sep 2006 18:39:27 +0000 (11:39 -0700)]
ocfs2: Update dlmfs for new dlmlock() API
We just need to add a namelen field to the user_lock_res structure, and
update a few debug prints. Instead of updating all debug prints, I took the
opportunity to remove a few that are likely unnecessary these days.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Fri, 8 Sep 2006 18:38:29 +0000 (11:38 -0700)]
ocfs2: Allow binary names in the DLM
The OCFS2 DLM uses strlen() to determine lock name length, which excludes
the possibility of putting binary values in the name string. Fix this by
requiring that string length be passed in as a parameter.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Fri, 8 Sep 2006 18:37:32 +0000 (11:37 -0700)]
ocfs2: Silence dlm error print
An AST can be delivered via the network after a lock has been removed, so no
need to print an error when we see that.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Linus Torvalds [Sun, 24 Sep 2006 17:19:56 +0000 (10:19 -0700)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: (50 commits)
[libata] Delete pata_it8172 driver
[PATCH] libata: improve handling of diagostic fail (and hardware that misreports it)
[PATCH] libata: fix non-uniform ports handling
Fix libata resource conflict for legacy mode
[libata] ata_piix: build fix
[PATCH] pata_amd: Check enable bits on Nvidia
[PATCH] Update SiS PATA
[libata] Add pata_jmicron driver to Kconfig, Makefile
[libata #pata-drivers] Trim trailing whitespace.
[libata] Trim trailing whitespace.
[libata] Add a bunch of PATA drivers.
Rename libata-bmdma.c to libata-sff.c.
libata: Grand renaming.
Clean up drivers/ata/Kconfig a bit.
[PATCH] CONFIG_PM=n slim: drivers/scsi/sata_sil*
[PATCH] sata_via: Add SATA support for vt8237a
[PATCH] libata: change path to libata in libata.tmpl
[PATCH] libata: s/CONFIG_SCSI_SATA/CONFIG_[S]ATA/g in pci/quirks.c
libata: Make sure drivers/ata is a separate Kconfig menu
[libata] ata_piix: add missing kfree()
...
Linus Torvalds [Sun, 24 Sep 2006 17:15:13 +0000 (10:15 -0700)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/netdev-2.6
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (217 commits)
net/ieee80211: fix more crypto-related build breakage
[PATCH] Spidernet: add ethtool -S (show statistics)
[NET] GT96100: Delete bitrotting ethernet driver
[PATCH] mv643xx_eth: restrict to 32-bit PPC_MULTIPLATFORM
[PATCH] Cirrus Logic ep93xx ethernet driver
r8169: the MMIO region of the 8167 stands behin BAR#1
e1000, ixgb: Remove pointless wrappers
[PATCH] Remove powerpc specific parts of 3c509 driver
[PATCH] s2io: Switch to pci_get_device
[PATCH] gt96100: move to pci_get_device API
[PATCH] ehea: bugfix for register access functions
[PATCH] e1000 disable device on PCI error
drivers/net/phy/fixed: #if 0 some incomplete code
drivers/net: const-ify ethtool_ops declarations
[PATCH] ethtool: allow const ethtool_ops
[PATCH] sky2: big endian
[PATCH] sky2: fiber support
[PATCH] sky2: tx pause bug fix
drivers/net: Trim trailing whitespace
[PATCH] ehea: IBM eHEA Ethernet Device Driver
...
Manually resolved conflicts in drivers/net/ixgb/ixgb_main.c and
drivers/net/sky2.c related to CHECKSUM_HW/CHECKSUM_PARTIAL changes by
commit
84fa7933a33f806bbbaae6775e87459b1ec584c0 that just happened to be
next to unrelated changes in this update.
Jeff Garzik [Sun, 24 Sep 2006 15:13:19 +0000 (11:13 -0400)]
Move several *_SUPER_MAGIC symbols to include/linux/magic.h.
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Sun, 24 Sep 2006 05:52:47 +0000 (01:52 -0400)]
Merge branch 'master' into upstream
Linus Torvalds [Sun, 24 Sep 2006 03:41:53 +0000 (20:41 -0700)]
Merge /pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6:
[SCSI] scsi_transport_fc: fixup netlink arguments
James Bottomley [Sun, 24 Sep 2006 03:07:20 +0000 (22:07 -0500)]
[SCSI] scsi_transport_fc: fixup netlink arguments
nlmsg_multicast now takes an extra allocation flag, so add it to
the use in the fibre channel transport class.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Linus Torvalds [Sun, 24 Sep 2006 02:53:30 +0000 (19:53 -0700)]
Merge /pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (94 commits)
[SCSI] SPI transport class: misc DV fixes
[SCSI] Switch some more scsi drivers to pci_get_device and refcounted pci structures
[SCSI] eata_pio cleanup and PCI fix
[SCSI] aacraid: README update
[SCSI] aacraid: remove scsi_remove_device
[SCSI] aacraid: merge rx and rkt code
[SCSI] aacraid: expose physical devices
[SCSI] aacraid: misc cleanup
[SCSI] zfcp: update maintainers file
[SCSI] zfcp: update maintainers file
[SCSI] zfcp: fix: avoid removal of fsf reqs before qdio queues are down
[SCSI] zfcp: introduce struct timer_list in struct zfcp_fsf_req
[SCSI] zfcp: fix: use correct req_id in eh_abort_handler
[SCSI] zfcp: create private slab caches to guarantee proper data alignment
[SCSI] zfcp: remove zfcp_ccw_unregister function
[SCSI] aic7xxx: pause sequencer before touching SBLKCTL
[SCSI] aic7xxx: avoid checking SBLKCTL register for certain cards
[SCSI] scsi_debug version 1.80
[SCSI] megaraid: Make megaraid_ioctl() check copy_to_user() return value
[SCSI] aha152x: remove static host array
...
James Bottomley [Sun, 24 Sep 2006 02:03:52 +0000 (21:03 -0500)]
Merge mulgrave-w:git/linux-2.6
Conflicts:
include/linux/blkdev.h
Trivial merge to incorporate tag prototypes.
James Bottomley [Wed, 20 Sep 2006 16:00:18 +0000 (12:00 -0400)]
[SCSI] SPI transport class: misc DV fixes
Key more of the domain validation settings off the inquiry data from
the disk (in particular, don't try IU or DT unless the disk claims to
support them.
Also add a new dv_in_progress flag to prevent recursive DV.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
David S. Miller [Sun, 24 Sep 2006 01:32:38 +0000 (18:32 -0700)]
[SPARC64]: Update defconfig.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 24 Sep 2006 01:31:42 +0000 (18:31 -0700)]
[SPARC64]: Fix sched_clock() wrapping every ~17 seconds.
Unfortunately, sparc64 doesn't have an easy way to do a "64 X 64 -->
128" bit multiply like PowerPC and IA64 do. We were doing a
"64 X 64 --> 64" bit multiple which causes overflow very quickly with
a 30-bit quotient shift.
So use a quotientshift count of 10 instead of 30, just like x86 and
ARM do.
This also fixes the wrapping of printk timestamp values every ~17
seconds.
Signed-off-by: David S. Miller <davem@davemloft.net>
Alan Cox [Fri, 15 Sep 2006 14:34:32 +0000 (15:34 +0100)]
[SCSI] Switch some more scsi drivers to pci_get_device and refcounted pci structures
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Alan Cox [Mon, 18 Sep 2006 18:18:34 +0000 (19:18 +0100)]
[SCSI] eata_pio cleanup and PCI fix
This started as a PCI reference fixup but to do that I need to build it,
to build it I need to fix it and its full of 32bitisms and uglies.
It has been resurrected, I'm not sure if this is a thank you for the
work on the license stuff or punishment for some unknown misdeed however
8). I've also fixed a memory scribble in the init code.
One oddity - the changes from HZ * to constants are deliberate. Whoever
originally wrote the code (or cleaned it up) used HZ for a cycle timing
loop even though is not HZ related. I've put it back to the counts used
in the old days when the driver was most used.
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Mark Haverkamp [Tue, 19 Sep 2006 16:00:39 +0000 (09:00 -0700)]
[SCSI] aacraid: README update
Received from Mark Salyzyn:
This patch to the driver's documentation adds a few new product entries,
sorts the entries on OEM lines first for easy searching, followed by
product id order to make it easier to compare against the open source
pci list. The driver has 'family match' so is somewhat future proof, no
code changes are required to recognize the new products.
Signed-off-by: Mark Haverkamp <markh@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Mark Haverkamp [Tue, 19 Sep 2006 16:00:18 +0000 (09:00 -0700)]
[SCSI] aacraid: remove scsi_remove_device
Received from Mark Salyzyn:
Until the system is stabilized, I am suggesting the enclosed
modification to prevent the driver from tickling the panic. Once sysfs
and friends are stabilized, the patch may be backed out. We have yet to
evaluate if we really want to relinquish existing Scsi Devices in any
case, holding on to them as configuration of arrays comes and goes makes
some sense as well. As a result, we have opted to pull the lines rather
than comment them in legacy.
Signed-off-by: Mark Haverkamp <markh@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Mark Haverkamp [Tue, 19 Sep 2006 16:00:02 +0000 (09:00 -0700)]
[SCSI] aacraid: merge rx and rkt code
Received from Mark Salyzyn:
The only real difference between the rkt and rx platform modules is the
offset of the message registers. This patch recognizes this similarity
and simplifies the driver to reduce it's code footprint and to improve
maintainability by reducing the code duplication.
Visibly, the 'rkt.c' portion of this patch looks more complicated than
it really is. View it as retaining the rkt-only specifics of the
interface.
Signed-off-by: Mark Haverkamp <markh@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Mark Haverkamp [Tue, 19 Sep 2006 15:59:43 +0000 (08:59 -0700)]
[SCSI] aacraid: expose physical devices
Received from Mark Salyzyn:
I am placing this functionality into an insmod parameter. Normally the physical
components are exported to sg, and are blocked from showing up in sd.
Note that the pass-through I/O path via the driver through the Firmware to the
physical disks is not an optimized path, the card is designed for Hardware
RAID, elevator sorting and caching. This should not be used as a means for
utilizing the aacraid based controllers as a generic scsi/SATA/SAS controller,
performance should suck by a few percentage points, any RAID meta-data on the
drives will confuse the controller about who owns the drives and there is a
high risk of destroying content in both directions. Unreliable and for
experimentation or strange controlled circumstances only.
Signed-off-by: Mark Haverkamp <markh@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Mark Haverkamp [Tue, 19 Sep 2006 15:59:23 +0000 (08:59 -0700)]
[SCSI] aacraid: misc cleanup
Received from Mark Salyzyn:
Basically cleanup, nothing here will have an affect. Adjusting some
error codes, removing superfluous definitions and code fragments.
Signed-off-by: Mark Haverkamp <markh@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Linus Torvalds [Sun, 24 Sep 2006 00:23:15 +0000 (17:23 -0700)]
Merge git://git.infradead.org/mtd-2.6
* git://git.infradead.org/mtd-2.6:
[MTD] Whitespace cleanup in SSFDC driver.
[MTD] SSFDC translation layer minor cleanup
[MTD] Fix dependencies with CONFIG_MTD=m
Linus Torvalds [Sun, 24 Sep 2006 00:21:12 +0000 (17:21 -0700)]
Merge branch 'linus' of /linux/kernel/git/perex/alsa
* 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: (148 commits)
[ALSA] intel8x0m - Free irq in suspend
[ALSA] Move CONFIG_SND_AC97_POWER_SAVE to pci/Kconfig
[ALSA] usb-audio: add mixer control names for the Aureon 5.1 MkII
[ALSA] ES1938: remove duplicate field initialization
[ALSA] usb-audio: increase number of packets per URB
[ALSA] hda-codec - Fix headphone auto-toggle on sigmatel codec
[ALSA] hda-intel - A slight cleanup of timeout check in azx_get_response()
[ALSA] hda-codec - Fix mic input with STAC92xx codecs
[ALSA] mixart: Use SEEK_{SET,CUR,END} instead of hardcoded values
[ALSA] gus: Use SEEK_{SET,CUR,END} instead of hardcoded values
[ALSA] opl4: Use SEEK_{SET,CUR,END} instead of hardcoded values
[ALSA] sound core: Use SEEK_{SET,CUR,END} instead of hardcoded values
[ALSA] hda-codec - Support multiple headphone pins
[ALSA] hda_intel prefer 24bit instead of 20bit
[ALSA] hda-codec - Add vendor ids for Motorola and Conexant
[ALSA] hda-codec - Add device id for Motorola si3054-compatible codec
[ALSA] Add missing compat ioctls for ALSA control API
[ALSA] powermac - Fix Oops when conflicting with aoa driver
[ALSA] aoa: add locking to tas codec
[ALSA] hda-intel - Fix suspend/resume with MSI
...