2008-08-08 07:16:57

by Stephen Rothwell

[permalink] [raw]
Subject: linux-next: Tree for August 8

Hi all,

Changes since next-20080807:

New tree: creds

Removed tree: hwmon

Temporarily dropped tree: avr32 (conflicts with the arm-current tree)

The usb.current tree gained a conflict against the arm-current tree but
lost two build fixes patches.

The driver-core tree lost a boot fix patch.

The avr32 tree conflicted badly with the arm-current tree.

The ttydev tree gained a conflict against Linus' tree but it is not worth
reporting as the file in question has been removed by a further update to
Linus' tree.

The creds tree gained 2 conflicts against the cifs tree and 1 against the
xfs tree. It also required a build fix patch.

I have also applied the following patches for known problems:

Add cuImage.mpc866ads to the bootwrapper as a cuboot-8xx target
Revert "Input: expand keycode space"
xen-balloon: fix up sysfs issues

----------------------------------------------------------------------------

I have created today's linux-next tree at
git://git.kernel.org/pub/scm/linux/kernel/git/sfr/linux-next.git
(patches at
http://www.kernel.org/pub/linux/kernel/people/sfr/linux-next/). If you
are tracking the linux-next tree using git, you should not use "git pull"
to do so as that will try to merge the new linux-next release with the
old one. You should use "git fetch" as mentioned in the FAQ on the wiki
(see below).

You can see which trees have been included by looking in the Next/Trees
file in the source. There are also quilt-import.log and merge.log files
in the Next directory. Between each merge, the tree was built with
a ppc64_defconfig for powerpc and an allmodconfig for x86_64. After the
final fixups, it is also built with powerpc allnoconfig,
44x_defconfig and allyesconfig and i386, sparc and sparc64 defconfig.

Below is a summary of the state of the merge.

We are up to 108 trees (counting Linus' and 14 trees of patches pending for
Linus' tree), more are welcome (even if they are currently empty).
Thanks to those who have contributed, and to those who haven't, please do.

Status of my local build tests will be at
http://kisskb.ellerman.id.au/linux-next . If maintainers want to give
advice about cross compilers/configs that work, we are always open to add
more builds.

Thanks to Jan Dittmer for adding the linux-next tree to his build tests
at http://l4x.org/k/ , the guys at http://test.kernel.org/ and Randy
Dunlap for doing many randconfig builds.

There is a wiki covering stuff to do with linux-next at
http://linux.f-seidel.de/linux-next/pmwiki/ . Thanks to Frank Seidel.

--
Cheers,
Stephen Rothwell [email protected]

$ git checkout master
$ git reset --hard stable
Merging origin/master
Merging powerpc-merge/merge
Merging scsi-rc-fixes/master
Merging net-current/master
Merging sparc-current/master
Merging sound-current/for-linus
Merging arm-current/master
Merging pci-current/for-linus
Merging wireless-current/master
Merging kbuild-current/master
Merging quilt/driver-core.current
Merging quilt/usb.current
CONFLICT (content): Merge conflict in drivers/usb/gadget/omap_udc.c
Merging cpufreq-current/fixes
Merging input-current/for-linus
Merging md-current/for-2.6.26
Merging dwmw2/master
Merging quilt/driver-core
Merging quilt/usb
Merging tip-core/auto-core-next
CONFLICT (content): Merge conflict in include/asm-generic/vmlinux.lds.h
Merging cpus4096/auto-cpus4096-next
CONFLICT (content): Merge conflict in net/sunrpc/svc.c
Merging ftrace/auto-ftrace-next
Merging genirq/auto-genirq-next
Merging safe-poison-pointers/auto-safe-poison-pointers-next
Merging sched/auto-sched-next
Merging stackprotector/auto-stackprotector-next
Merging timers/auto-timers-next
Merging x86/auto-x86-next
CONFLICT (content): Merge conflict in arch/x86/kernel/genapic_64.c
CONFLICT (content): Merge conflict in drivers/pci/dmar.c
Merging pci/linux-next
Merging quilt/device-mapper
Merging hid/mm
Merging quilt/i2c
Merging quilt/jdelvare-hwmon
Merging quilt/kernel-doc
Merging avr32/avr32-arch
CONFLICT (content): Merge conflict in arch/avr32/mach-at32ap/at32ap700x.c
CONFLICT (content): Merge conflict in arch/avr32/mach-at32ap/pm.c
$ git reset --hard
Merging v4l-dvb/stable
Merging s390/features
Merging sh/master
Merging jfs/next
Merging kbuild/master
Merging quilt/ide
Merging libata/NEXT
Merging nfs/linux-next
Merging xfs/master
Merging infiniband/for-next
Merging acpi/test
Merging blackfin/for-linus
Merging nfsd/nfsd-next
Merging ieee1394/for-next
Merging ubi/linux-next
Merging kvm/master
CONFLICT (content): Merge conflict in include/linux/kvm.h
Merging dlm/next
Merging scsi/master
Merging ia64/test
Merging tests/master
Merging ocfs2/linux-next
Merging quilt/m68k
Merging powerpc/powerpc-next
Merging ext4/next
Merging 4xx/next
Merging async_tx/next
Merging udf/for_next
Merging net/master
Merging sparc/master
Merging galak/powerpc-next
Merging mtd/master
Merging wireless/master
Merging crypto/master
CONFLICT (content): Merge conflict in include/asm-x86/cpufeature.h
Merging vfs/for-next
Merging sound/for-next
Merging arm/devel
Merging cpufreq/next
Merging v9fs/for-next
Merging quilt/rr
Merging cifs/master
Merging mmc/next
Merging gfs2/master
Merging input/next
Merging semaphore/semaphore
Merging semaphore-removal/semaphore-removal
Merging bkl-removal/bkl-removal
Merging trivial/next
CONFLICT (content): Merge conflict in Documentation/edac.txt
CONFLICT (content): Merge conflict in include/linux/securebits.h
Merging ubifs/linux-next
Merging lsm/for-next
Merging block/for-next
Merging embedded/master
Merging firmware/master
CONFLICT (content): Merge conflict in drivers/media/dvb/ttpci/Kconfig
CONFLICT (content): Merge conflict in drivers/media/dvb/ttpci/Makefile
Merging pcmcia/master
Merging battery/master
Merging leds/for-mm
Merging backlight/for-mm
Merging kgdb/kgdb-next
Merging slab/for-next
Merging m68knommu/for-next
Merging uclinux/for-next
Merging md/for-next
Merging cris/for-next
Merging kmemcheck/auto-kmemcheck-next
Merging generic-ipi/auto-generic-ipi-next
Merging mips/mips-for-linux-next
Merging mfd/for-next
Merging hdlc/hdlc-next
Merging drm/drm-next
Merging voltage/reg-for-linus
Merging security-testing/next
Merging lblnet/master
Merging quilt/ttydev
CONFLICT (content): Merge conflict in drivers/char/viocons.c
Merging agp/agp-next
Merging creds/next-creds
CONFLICT (content): Merge conflict in fs/cifs/dir.c
CONFLICT (content): Merge conflict in fs/cifs/inode.c
CONFLICT (content): Merge conflict in fs/xfs/xfs_acl.c
Applying creds: build fixes 1
Applying Add cuImage.mpc866ads to the bootwrapper as a cuboot-8xx target
Created commit 34029a6: Revert "Input: expand keycode space"
Applying xen-balloon: fix up sysfs issues


Attachments:
(No filename) (6.49 kB)
(No filename) (197.00 B)
Download all attachments

2008-08-08 17:25:54

by Eduardo Habkost

[permalink] [raw]
Subject: next-20080808 fs/nfsctl.c build error


I got the following build error on next-20080808:

fs/nfsctl.c: In function ‘do_open’:
fs/nfsctl.c:45: error: implicit declaration of function ‘current_cred’
fs/nfsctl.c:45: warning: passing argument 4 of ‘dentry_open’ makes pointer from integer without a cast
make[1]: *** [fs/nfsctl.o] Error 1
make: *** [fs/nfsctl.o] Error 2


.config attached.


Bisected to:

commit 3aef995c0537d5ba27936d2e8cb42d307084932c
Author: David Howells <[email protected]>
Date: Thu Aug 7 20:02:18 2008 +1000

CRED: Pass credentials through dentry_open()

Pass credentials through dentry_open() so that the COW creds patch can have
SELinux's flush_unauthorized_files() pass the appropriate creds back to itself
when it opens its null chardev.

The security_dentry_open() call also now takes a creds pointer, as does the
dentry_open hook in struct security_operations.

Signed-off-by: David Howells <[email protected]>
Acked-by: James Morris <[email protected]>


--
Eduardo


Attachments:
(No filename) (0.98 kB)
linux-next.config (51.06 kB)
Download all attachments

2008-08-08 17:39:31

by Randy Dunlap

[permalink] [raw]
Subject: Re: next-20080808 fs/nfsctl.c build error

On Fri, 8 Aug 2008 14:25:27 -0300 Eduardo Habkost wrote:

>
> I got the following build error on next-20080808:
>
> fs/nfsctl.c: In function ‘do_open’:
> fs/nfsctl.c:45: error: implicit declaration of function ‘current_cred’
> fs/nfsctl.c:45: warning: passing argument 4 of ‘dentry_open’ makes pointer from integer without a cast
> make[1]: *** [fs/nfsctl.o] Error 1
> make: *** [fs/nfsctl.o] Error 2


There's also a <cred> build error in coda fs:

linux-next-20080808/fs/coda/file.c:177: error: dereferencing pointer to incomplete type
coda1.out:make[3]: *** [fs/coda/file.o] Error 1

.config attached.

---
~Randy
Linux Plumbers Conference, 17-19 September 2008, Portland, Oregon USA
http://linuxplumbersconf.org/


Attachments:
config-r3740 (55.75 kB)

2008-08-08 22:31:41

by James Morris

[permalink] [raw]
Subject: Re: next-20080808 fs/nfsctl.c build error

On Fri, 8 Aug 2008, Eduardo Habkost wrote:

>
> I got the following build error on next-20080808:
>
> fs/nfsctl.c: In function ?do_open?:
> fs/nfsctl.c:45: error: implicit declaration of function ?current_cred?
> fs/nfsctl.c:45: warning: passing argument 4 of ?dentry_open? makes pointer from integer without a cast
> make[1]: *** [fs/nfsctl.o] Error 1
> make: *** [fs/nfsctl.o] Error 2

Something I noticed in the configs posted with build breakages is
CONFIG_SMP=n, although I'm not sure how/if that's related.

In any case, it seems that linux/cred.h should include linux/sched.h to
provide a full definition of 'struct task_struct', so that 'current' can
be dereferenced (e.g. in current_cred()).

Does this patch work for you and look correct ?

----

diff --git a/fs/nfsctl.c b/fs/nfsctl.c
index cc4ef26..f6967b6 100644
--- a/fs/nfsctl.c
+++ b/fs/nfsctl.c
@@ -14,6 +14,7 @@
#include <linux/namei.h>
#include <linux/mount.h>
#include <linux/syscalls.h>
+#include <linux/cred.h>
#include <asm/uaccess.h>

/*
diff --git a/include/linux/cred.h b/include/linux/cred.h
index b156ed4..431f1ab 100644
--- a/include/linux/cred.h
+++ b/include/linux/cred.h
@@ -14,9 +14,9 @@

#include <linux/capability.h>
#include <linux/key.h>
+#include <linux/sched.h>
#include <asm/atomic.h>

-struct user_struct;
struct cred;
struct inode;


---

Signed-off-by: James Morris <[email protected]>



--
James Morris
<[email protected]>

2008-08-08 22:58:53

by David Howells

[permalink] [raw]
Subject: Re: next-20080808 fs/nfsctl.c build error

James Morris <[email protected]> wrote:

> In any case, it seems that linux/cred.h should include linux/sched.h to
> provide a full definition of 'struct task_struct', so that 'current' can
> be dereferenced (e.g. in current_cred()).

Not good. That makes sched.h and cred.h recursively dependent. sched.h
really needs splitting up, and the include dependencies need sorting.

However, for the moment I recommend the attached patch.

David
---
From: David Howells <[email protected]>

CRED: Fix inclusion problems

Under certain configurations, some .c files obtain linux/sched.h and/or
linux/cred.h through other include files, but not under all configurations.

A couple of places (one in Coda, one in nfsd) need extra includes.

Signed-off-by: David Howells <[email protected]>
---

fs/coda/file.c | 1 +
fs/nfsctl.c | 1 +
2 files changed, 2 insertions(+), 0 deletions(-)


diff --git a/fs/coda/file.c b/fs/coda/file.c
index 5a87699..9d0d703 100644
--- a/fs/coda/file.c
+++ b/fs/coda/file.c
@@ -16,6 +16,7 @@
#include <linux/errno.h>
#include <linux/smp_lock.h>
#include <linux/string.h>
+#include <linux/cred.h>
#include <asm/uaccess.h>

#include <linux/coda.h>
diff --git a/fs/nfsctl.c b/fs/nfsctl.c
index cc4ef26..358e469 100644
--- a/fs/nfsctl.c
+++ b/fs/nfsctl.c
@@ -14,6 +14,7 @@
#include <linux/namei.h>
#include <linux/mount.h>
#include <linux/syscalls.h>
+#include <linux/sched.h>
#include <asm/uaccess.h>

/*

2008-08-08 23:34:32

by James Morris

[permalink] [raw]
Subject: Re: next-20080808 fs/nfsctl.c build error

On Fri, 8 Aug 2008, David Howells wrote:

> James Morris <[email protected]> wrote:
>
> > In any case, it seems that linux/cred.h should include linux/sched.h to
> > provide a full definition of 'struct task_struct', so that 'current' can
> > be dereferenced (e.g. in current_cred()).
>
> Not good. That makes sched.h and cred.h recursively dependent. sched.h
> really needs splitting up, and the include dependencies need sorting.
>
> However, for the moment I recommend the attached patch.

Applied.


--
James Morris
<[email protected]>