Linux-Next discussions
 help / color / mirror / Atom feed
* Re: linux kernel development
From: Américo Wang @ 2011-08-22  4:53 UTC (permalink / raw)
  To: Niloofar Fazlollahi; +Cc: netdev, linux-kernel, linux-next
In-Reply-To: <CAK8ka9wP_V7ngtR0jv7T3vNZoTep9c18=AgRSe9efYAyXejUPg@mail.gmail.com>

On Mon, Aug 22, 2011 at 12:51 PM, Niloofar Fazlollahi
<nfazlollahi@gmail.com> wrote:
> Hi,
>
> I have a generic question and appreciate your kind response.
>
> What is the process and requirements for getting the linux kernel community
>
> approval to commit a code into linux kernel (related to networking - TCP).


Hello,

Please read the documents in Documentation/development-process/ directory
of the kernel source code.

Thanks.

^ permalink raw reply

* linux-next: Tree for Aug 22
From: Stephen Rothwell @ 2011-08-22  4:53 UTC (permalink / raw)
  To: linux-next; +Cc: LKML

[-- Attachment #1: Type: text/plain, Size: 15707 bytes --]

Hi all,

[The kernel.org mirroring is a bit low today]

The powerpc allyesconfig build still fails today.

Changes since 20110819:

The net tree gained a conflict against the 4xx tree.

The pm tree lost its build failure but gained a conflict against the s390
tree.

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

I have created today's linux-next tree at
git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
(patches at http://www.kernel.org/pub/linux/kernel/v2.6/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 (if any), it is also built with powerpc allnoconfig (32 and
64 bit), ppc44x_defconfig and allyesconfig (minus
CONFIG_PROFILE_ALL_BRANCHES - this fails its final link) and i386, sparc
and sparc64 defconfig. These builds also have
CONFIG_ENABLE_WARN_DEPRECATED, CONFIG_ENABLE_MUST_CHECK and
CONFIG_DEBUG_INFO disabled when necessary.

Below is a summary of the state of the merge.

We are up to 199 trees (counting Linus' and 28 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 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                    sfr@canb.auug.org.au

$ git checkout master
$ git reset --hard stable
Merging origin/master
Merging fixes/fixes
Merging kbuild-current/rc-fixes
Merging arm-current/master
Merging m68k-current/for-linus
Merging powerpc-merge/merge
Merging 52xx-and-virtex-current/powerpc/merge
Merging sparc-current/master
Merging scsi-rc-fixes/master
Merging net-current/master
Merging sound-current/for-linus
Merging pci-current/for-linus
Merging wireless-current/master
Merging driver-core.current/driver-core-linus
Merging tty.current/tty-linus
Merging usb.current/usb-linus
Merging staging.current/staging-linus
Merging cpufreq-current/fixes
Merging input-current/for-linus
Merging md-current/for-linus
Merging audit-current/for-linus
Merging crypto-current/master
Merging ide-curent/master
Merging dwmw2/master
Merging sh-current/sh-fixes-for-linus
Merging rmobile-current/rmobile-fixes-for-linus
Merging fbdev-current/fbdev-fixes-for-linus
Merging devicetree-current/devicetree/merge
Merging spi-current/spi/merge
Merging arm/for-next
Merging arm-lpae/for-next
CONFLICT (content): Merge conflict in arch/arm/include/asm/pgalloc.h
CONFLICT (content): Merge conflict in arch/arm/include/asm/pgtable.h
CONFLICT (content): Merge conflict in arch/arm/include/asm/tlb.h
Merging arm-soc/for-next
Merging at91/at91-next
Merging davinci/davinci-next
Merging i.MX/for-next
Merging linux-spec/for-next
Merging msm/for-next
CONFLICT (content): Merge conflict in arch/arm/mach-msm/io.c
Merging omap/for-next
Merging pxa/for-next
Merging samsung/next-samsung
Merging s5p/for-next
Merging tegra/for-next
Merging ux500-core/ux500-core
Merging xilinx/arm-next
Merging blackfin/for-linus
Merging cris/for-next
Merging ia64/test
Merging m68k/for-next
Merging m68knommu/for-next
Merging microblaze/next
Merging mips/mips-for-linux-next
Merging openrisc/for-upstream
Merging parisc/for-next
Merging powerpc/next
Merging 4xx/next
Merging 52xx-and-virtex/powerpc/next
Merging galak/next
Merging s390/features
Merging sh/sh-latest
Merging rmobile/rmobile-latest
Merging sparc/master
Merging tile/master
Merging unicore32/unicore32
Merging xtensa/master
Merging ceph/for-next
Merging cifs/master
Merging configfs/linux-next
Merging ecryptfs/next
Merging ext3/for_next
Merging ext4/dev
Merging fatfs/master
Merging fuse/for-next
Merging gfs2/master
Merging hfsplus/for-next
Merging jfs/next
Merging logfs/master
Merging nfs/linux-next
Merging nfsd/nfsd-next
Merging nilfs2/for-next
Merging ocfs2/linux-next
Merging omfs/for-next
Merging squashfs/master
Merging udf/for_next
Merging v9fs/for-next
Merging ubifs/linux-next
Merging xfs/master
Applying: xfs: fix tracing builds inside the source tree
Merging vfs/for-next
Merging vfs-scale/vfs-scale-working
Merging pci/linux-next
Merging hid/for-next
Merging quilt/i2c
Merging bjdooks-i2c/next-i2c
Merging quilt/jdelvare-hwmon
Merging hwmon-staging/hwmon-next
Merging quilt/kernel-doc
Merging docs/docs-move
Merging v4l-dvb/master
Merging kbuild/for-next
Merging kconfig/for-next
Merging ide/master
Merging libata/NEXT
Merging infiniband/for-next
Merging acpi/test
Merging idle-test/idle-test
Merging powertools/tools-test
Merging cpupowerutils/master
Merging ieee1394/for-next
Merging ubi/linux-next
Merging dlm/next
Merging swiotlb/master
Merging ibft/master
Merging scsi/master
Merging iscsi-target/for-next
Merging slave-dma/next
Merging async_tx/next
Merging net/master
CONFLICT (delete/modify): arch/powerpc/configs/40x/hcu4_defconfig deleted in HEAD and modified in net/master. Version net/master of arch/powerpc/configs/40x/hcu4_defconfig left in tree.
$ git rm -f arch/powerpc/configs/40x/hcu4_defconfig
Applying: powerpc: update ppc64_defconfig for net device movement
Merging wireless/master
CONFLICT (delete/modify): drivers/staging/ath6kl/miscdrv/ar3kps/ar3kpsparser.c deleted in wireless/master and modified in HEAD. Version HEAD of drivers/staging/ath6kl/miscdrv/ar3kps/ar3kpsparser.c left in tree.
CONFLICT (delete/modify): drivers/staging/ath6kl/os/linux/ar6000_drv.c deleted in wireless/master and modified in HEAD. Version HEAD of drivers/staging/ath6kl/os/linux/ar6000_drv.c left in tree.
$ git rm -f drivers/staging/ath6kl/miscdrv/ar3kps/ar3kpsparser.c
$ git rm -f drivers/staging/ath6kl/os/linux/ar6000_drv.c
Merging bluetooth/master
Merging mtd/master
Merging l2-mtd/master
CONFLICT (content): Merge conflict in drivers/mtd/maps/lantiq-flash.c
Merging crypto/master
Merging sound/for-next
Merging sound-asoc/for-next
Merging cpufreq/next
Merging quilt/rr
Merging input/next
Merging input-mt/next
Merging lsm/for-next
Merging block/for-next
Merging quilt/device-mapper
Merging embedded/master
Merging firmware/master
Merging pcmcia/master
Merging battery/master
Merging leds/for-mm
CONFLICT (content): Merge conflict in drivers/leds/Kconfig
Merging backlight/for-mm
Merging mmc/mmc-next
Merging kgdb/kgdb-next
Merging slab/for-next
Merging uclinux/for-next
Merging md/for-next
Merging mfd/for-next
Merging hdlc/hdlc-next
Merging drm/drm-next
Merging fbdev/master
Merging viafb/viafb-next
Merging omap_dss2/for-next
Merging voltage/for-next
Merging security/next
Merging selinux/master
Merging lblnet/master
Merging agp/agp-next
Merging watchdog/master
Merging bdev/master
Merging dwmw2-iommu/master
Merging cputime/cputime
Merging osd/linux-next
Merging jc_docs/docs-next
Merging nommu/master
Merging trivial/for-next
Merging audit/for-next
Merging pm/linux-next
CONFLICT (content): Merge conflict in arch/s390/include/asm/thread_info.h
Merging apm/for-next
Merging fsnotify/for-next
Merging irda/for-next
Merging i7core_edac/linux_next
Merging i7300_edac/linux_next
CONFLICT (content): Merge conflict in arch/x86/kernel/cpu/mcheck/mce.c
Merging devicetree/devicetree/next
CONFLICT (content): Merge conflict in drivers/of/base.c
Merging spi/spi/next
Merging gpio/gpio/next
Merging tip/auto-latest
CONFLICT (content): Merge conflict in arch/x86/mm/fault.c
Merging rcu/rcu/next
Merging kvm/linux-next
Merging oprofile/for-next
Merging ptrace/ptrace
Merging xen/upstream/xen
CONFLICT (content): Merge conflict in arch/x86/xen/Makefile
Merging xen-two/linux-next
Merging xen-pvhvm/linux-next
Merging edac-amd/for-next
Merging percpu/for-next
Merging workqueues/for-next
Merging sfi/sfi-test
Merging asm-generic/next
Merging drivers-x86/linux-next
Merging hwpoison/hwpoison
Merging sysctl/master
Merging namespace/master
Merging regmap/for-next
Merging driver-core/driver-core-next
Merging tty/tty-next
Merging usb/usb-next
Merging staging/staging-next
Merging bkl-config/config
Merging tmem/linux-next
Merging writeback/next
Merging arm-dt/devicetree/arm-next
Merging scsi-post-merge/merge-base:master
Merging moduleh/module.h-split
CONFLICT (content): Merge conflict in include/linux/dmaengine.h
Applying: dm: use export.h instead of module.h where possible
Applying: block: bsg-lib.c needs export.h not module.h
Applying: PM: EXPORT_SYMBOL needs export.h
$ git checkout akpm
Applying: Expand root=PARTUUID=UUID syntax to support selecting a root partition by
Applying: This patch makes two changes:
Applying: On thread exit shm_exit_ns() is called, it uses shm_ids(ns).rw_mutex.  It
Applying: Because of x86-implement-strict-user-copy-checks-for-x86_64.patch
Applying: When no floppy is found the module code can be released while a timer
Applying: The parameter's origin type is long.  On an i386 architecture, it can
Applying: Add support for Aspire 1410 BIOS v1.3314.  Fixes the following error:
Applying: This makes the iris driver use the platform API, so it is properly exposed
Applying: On x86_32 casting the unsigned int result of get_random_int() to long may
Applying: This new driver replaces the old PCEngines Alix 2/3 LED driver with a new
Applying: Cc: Ed Wildgoose <git@wildgooses.com>
Applying: Replace the bubble sort in sanitize_e820_map() with a call to the generic
Applying: The x86 timer interrupt handler is the only handler not traced in the
Applying: The current interrupt traces from irq_handler_entry and irq_handler_exit
Applying: Don't allow everybody to use a modem.
Applying: The address limit is already set in flush_old_exec() so this
Applying: A call to va_copy() should always be followed by a call to va_end() in the
Applying: Don't dereference em if it's NULL or an error pointer.
Applying: Some messing with error codes to return 0 on out id's and match
Applying: fb_set_suspend() must be called with the console semaphore held, which
Applying: hwmon was using an idr with a NULL pointer, so convert to an
Applying: A straightforward looking use of idr for a device id.
Applying: The address limit is already set in flush_old_exec() so this
Applying: The address limit is already set in flush_old_exec() so this
Applying: Add new check (assert_init) to make sure objects are initialized and
Applying: del_timer_sync() calls debug_object_assert_init() to assert that a timer
Applying: ext4_{set,clear}_bit() is defined as __test_and_{set,clear}_bit_le() for
Applying: The dqc_bitmap field of struct ocfs2_local_disk_chunk is 32-bit aligned,
Applying: The address limit is already set in flush_old_exec() so those calls to
Applying: When do pci remove/rescan on system that have more iommus, got
Applying: The current implementation of dmi_name_in_vendors() is an invitation to
Applying: For headers that get exported to userland and make use of u32 style
Applying: Fix sparse warnings of right shift bigger than source value size:
Applying: We leak in drivers/scsi/aacraid/commctrl.c::aac_send_raw_srb() :
Applying: Some mangling of errors was necessary to maintain current interface.
Applying: This does involve additional use of the spin lock in idr.c.  Is this an
Applying: Instead of open coding this function use kstrtoul_from_user() directly.
Applying: brd_make_request() always returns 0, which doesn't make much sense.
Applying: The address limit is already set in flush_old_exec() so this assignment of
Applying: The basic idea behind cross memory attach is to allow MPI programs doing
Applying: - Add x86_64 specific wire up
Applying: acct_isolated of compaction uses page_lru_base_type which returns only
Applying: Change ISOLATE_XXX macro with bitwise isolate_mode_t type.  Normally,
Applying: In async mode, compaction doesn't migrate dirty or writeback pages.  So,
Applying: In __zone_reclaim case, we don't want to shrink mapped page.  Nonetheless,
Applying: unmap_and_move() is one a big messy function.  Clean it up.
Applying: radix_tree_tag_get()'s BUG (when it sees a tag after saw_unset_tag) was
Applying: per-task block plug can reduce block queue lock contention and increase
Applying: The tracing ring-buffer used this function briefly, but not anymore.
Applying: After selecting a task to kill, the oom killer iterates all processes and
Applying: Remove PageSwapBacked (!page_is_file_cache) cases from
Applying: Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Applying: The current implementation of the /dev/hpet driver couples opening the
Applying: smp_call_function() only lets all other CPUs execute a specific function,
Applying: auto_demotion_disable is called only for online CPUs.  For hotplugged
Applying: Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning:
Applying: Strict user copy checks are only really supported on x86_32 even though
Applying: The help text for this config is duplicated across the x86, parisc, and
Applying: s/lib-/obj-/ for usercopy.o
Applying: After an "unexpected" reboot, I found this Oops in my logs:
Applying: In the move of the lis3 driver, the hp_accel.c file got dropped from the
Applying: Add axis correction for HP EliteBook 2730p.
Applying: Add axis correction for HP EliteBook 8540w.
Applying: Add axis correction for HP ProBook 6555b.
Applying: Adapt the help text for CONFIG_HP_ACCEL to the move of
Applying: Signed-off-by: Ilkka Koskinen <ilkka.koskinen@nokia.com>
Applying: Signed-off-by: Ilkka Koskinen <ilkka.koskinen@nokia.com>
Applying: Change exported functions to use the device given as parameter
Applying: Signed-off-by: Ilkka Koskinen <ilkka.koskinen@nokia.com>
Applying: Add V2 of the LED driver for a single timer channel for the TPU hardware
Applying: Add support for slice by 8 to existing crc32 algorithm.  Also modify
Applying: don't include asm/msr.h
Applying: This is the one use of an ida that doesn't retry on receiving -EAGAIN.
Applying: One can get this information from minix/inode.c, but adding the
Applying: Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Applying: Force this on for -next/mm testing purposes.
Applying: Add a proc_dointvec_bool() sysctl handler for cases where the input value
Applying: Use the new proc_do_intvec_bool() handler for various boolean inputs.
Applying: Add a proc_dointvec_unsigned() sysctl handler for positive value cases.
Applying: Cc: Alexey Dobriyan <adobriyan@gmail.com>
Applying: Use the new proc_do_intvec_unsigned() handler for various unsigned inputs.
Applying: A default echo function has been provided so it is no longer an error when
Applying: This client driver allows you to use a GPIO pin as a source for PPS
Applying: remove unneeded cast of void*
Applying: Straightforward.  As an aside, the ida_init calls are not needed as far as
Merging akpm
Applying: do_mounts: remove __init_data from root_wait

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* linux kernel development
From: Niloofar Fazlollahi @ 2011-08-22  4:51 UTC (permalink / raw)
  To: netdev; +Cc: linux-kernel, linux-next
In-Reply-To: <CAK8ka9y1VhMzS0X2GSEg4AQzSMPwOkS3HQxBuX4t-Rp-_OwDow@mail.gmail.com>

Hi,

I have a generic question and appreciate your kind response.

What is the process and requirements for getting the linux kernel community

approval to commit a code into linux kernel (related to networking - TCP).

Regards

Niloofar F

^ permalink raw reply

* linux-next: manual merge of the pm tree with the s390 tree
From: Stephen Rothwell @ 2011-08-22  2:37 UTC (permalink / raw)
  To: Rafael J. Wysocki
  Cc: linux-next, linux-kernel, Tejun Heo, Martin Schwidefsky,
	Heiko Carstens

Hi Rafael,

Today's linux-next merge of the pm tree got a conflict in
arch/s390/include/asm/thread_info.h between commit 5f67c275efe7 ("[S390]
fix _TIF_SINGLE_STEP definition") from the s390 tree and commit
c9ff4d7b50c4 ("freezer: remove now unused TIF_FREEZE") from the pm tree.

I fixed it up (see below) and can carry the fix as necessary.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au

diff --cc arch/s390/include/asm/thread_info.h
index f9a9a10,589708a..0000000
--- a/arch/s390/include/asm/thread_info.h
+++ b/arch/s390/include/asm/thread_info.h
@@@ -117,8 -116,7 +116,7 @@@ static inline struct thread_info *curre
  #define _TIF_SIE		(1<<TIF_SIE)
  #define _TIF_POLLING_NRFLAG	(1<<TIF_POLLING_NRFLAG)
  #define _TIF_31BIT		(1<<TIF_31BIT)
 -#define _TIF_SINGLE_STEP	(1<<TIF_FREEZE)
 +#define _TIF_SINGLE_STEP	(1<<TIF_SINGLE_STEP)
- #define _TIF_FREEZE		(1<<TIF_FREEZE)
  
  #ifdef CONFIG_64BIT
  #define is_32bit_task()		(test_thread_flag(TIF_31BIT))

^ permalink raw reply

* linux-next: manual merge of the net tree with the  tree
From: Stephen Rothwell @ 2011-08-22  1:51 UTC (permalink / raw)
  To: David Miller, netdev
  Cc: linux-next, linux-kernel, Josh Boyer, Niklaus Giger, Tony Breeds

[-- Attachment #1: Type: text/plain, Size: 455 bytes --]

Hi all,

Today's linux-next merge of the net tree got a conflict in
arch/powerpc/configs/40x/hcu4_defconfig between commit 9fcd768d0cc8
("powerpc/40x: Remove obsolete HCU4 board") from the 4xx tree and commit
3b3bceef26f8 ("net: fix IBM EMAC driver after rename") from the net tree.

The former commit removes the file, so I just did that.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* Re: linux-next: boot test failure (net tree)
From: Stephen Rothwell @ 2011-08-22  1:30 UTC (permalink / raw)
  To: David Miller
  Cc: netdev, linux-next, linux-kernel, jeffrey.t.kirsher, mikey,
	torvalds, akpm, ppc-dev, Benjamin Herrenschmidt, Paul Mackerras
In-Reply-To: <20110817.225356.1790362313048139752.davem@davemloft.net>

Hi Dave,

On Wed, 17 Aug 2011 22:53:56 -0700 (PDT) David Miller <davem@davemloft.net> wrote:
>
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Thu, 18 Aug 2011 15:22:14 +1000
> 
> > Mikey asks:  Will Dave take these updates if we get Acks from the
> > maintainers?  :-)
> 
> I'm more than happy to :-)

Here's what I am applying as a merge fixup to the net tree today so that
my ppc64_defconfig builds actually build more or less the same set of
drivers as before this rearrangement.

This has no Acks yet, but produces a very similar .config to what we had
previously.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Mon, 22 Aug 2011 11:23:56 +1000
Subject: [PATCH] powerpc: update ppc64_defconfig for net device movement

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 arch/powerpc/configs/ppc64_defconfig |   71 +++++++++++++--------------------
 1 files changed, 28 insertions(+), 43 deletions(-)

diff --git a/arch/powerpc/configs/ppc64_defconfig b/arch/powerpc/configs/ppc64_defconfig
index 84a685a5..9a424c4 100644
--- a/arch/powerpc/configs/ppc64_defconfig
+++ b/arch/powerpc/configs/ppc64_defconfig
@@ -49,7 +49,6 @@ CONFIG_NO_HZ=y
 CONFIG_HIGH_RES_TIMERS=y
 CONFIG_HZ_100=y
 CONFIG_BINFMT_MISC=m
-CONFIG_HOTPLUG_CPU=y
 CONFIG_KEXEC=y
 CONFIG_IRQ_ALL_CPUS=y
 CONFIG_MEMORY_HOTREMOVE=y
@@ -75,7 +74,6 @@ CONFIG_INET_ESP=m
 CONFIG_INET_IPCOMP=m
 # CONFIG_IPV6 is not set
 CONFIG_NETFILTER=y
-CONFIG_NETFILTER_NETLINK_QUEUE=m
 CONFIG_NF_CONNTRACK=m
 CONFIG_NF_CONNTRACK_EVENTS=y
 CONFIG_NF_CT_PROTO_SCTP=m
@@ -133,7 +131,6 @@ CONFIG_NETFILTER_XT_MATCH_U32=m
 CONFIG_NF_CONNTRACK_IPV4=m
 CONFIG_IP_NF_QUEUE=m
 CONFIG_IP_NF_IPTABLES=m
-CONFIG_IP_NF_MATCH_ADDRTYPE=m
 CONFIG_IP_NF_MATCH_AH=m
 CONFIG_IP_NF_MATCH_ECN=m
 CONFIG_IP_NF_MATCH_TTL=m
@@ -145,7 +142,6 @@ CONFIG_NF_NAT=m
 CONFIG_IP_NF_TARGET_MASQUERADE=m
 CONFIG_IP_NF_TARGET_NETMAP=m
 CONFIG_IP_NF_TARGET_REDIRECT=m
-CONFIG_NF_NAT_SNMP_BASIC=m
 CONFIG_IP_NF_MANGLE=m
 CONFIG_IP_NF_TARGET_CLUSTERIP=m
 CONFIG_IP_NF_TARGET_ECN=m
@@ -176,7 +172,6 @@ CONFIG_CHR_DEV_SG=y
 CONFIG_SCSI_MULTI_LUN=y
 CONFIG_SCSI_CONSTANTS=y
 CONFIG_SCSI_FC_ATTRS=y
-CONFIG_SCSI_SAS_ATTRS=m
 CONFIG_SCSI_CXGB3_ISCSI=m
 CONFIG_SCSI_CXGB4_ISCSI=m
 CONFIG_SCSI_BNX2_ISCSI=m
@@ -208,13 +203,6 @@ CONFIG_DM_SNAPSHOT=m
 CONFIG_DM_MIRROR=m
 CONFIG_DM_ZERO=m
 CONFIG_DM_MULTIPATH=m
-CONFIG_IEEE1394=y
-CONFIG_IEEE1394_OHCI1394=y
-CONFIG_IEEE1394_SBP2=m
-CONFIG_IEEE1394_ETH1394=m
-CONFIG_IEEE1394_RAWIO=y
-CONFIG_IEEE1394_VIDEO1394=m
-CONFIG_IEEE1394_DV1394=m
 CONFIG_ADB_PMU=y
 CONFIG_PMAC_SMU=y
 CONFIG_THERM_PM72=y
@@ -223,43 +211,49 @@ CONFIG_WINDFARM_PM81=y
 CONFIG_WINDFARM_PM91=y
 CONFIG_WINDFARM_PM112=y
 CONFIG_WINDFARM_PM121=y
-CONFIG_NETDEVICES=y
 CONFIG_DUMMY=m
 CONFIG_BONDING=m
 CONFIG_TUN=m
 CONFIG_MARVELL_PHY=y
 CONFIG_BROADCOM_PHY=m
-CONFIG_NET_ETHERNET=y
-CONFIG_SUNGEM=y
 CONFIG_NET_VENDOR_3COM=y
 CONFIG_VORTEX=y
-CONFIG_IBMVETH=m
-CONFIG_NET_PCI=y
-CONFIG_PCNET32=y
-CONFIG_E100=y
+CONFIG_NET_VENDOR_ALTEON=y
 CONFIG_ACENIC=m
 CONFIG_ACENIC_OMIT_TIGON_I=y
-CONFIG_E1000=y
-CONFIG_E1000E=y
+CONFIG_NET_VENDOR_AMD=y
+CONFIG_PCNET32=y
 CONFIG_TIGON3=y
-CONFIG_BNX2=m
-CONFIG_SPIDER_NET=m
-CONFIG_GELIC_NET=m
-CONFIG_GELIC_WIRELESS=y
 CONFIG_CHELSIO_T1=m
-CONFIG_CHELSIO_T3=m
-CONFIG_CHELSIO_T4=m
+CONFIG_NET_VENDOR_EMULEX=y
+CONFIG_BE2NET=m
+CONFIG_NET_VENDOR_EXAR=y
+CONFIG_S2IO=m
+CONFIG_NET_VENDOR_IBM=y
+CONFIG_IBMVETH=m
+CONFIG_ISERIES_VETH=m
 CONFIG_EHEA=m
-CONFIG_IXGBE=m
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_E100=y
+CONFIG_E1000=y
+CONFIG_E1000E=y
 CONFIG_IXGB=m
-CONFIG_S2IO=m
+CONFIG_IXGBE=m
+CONFIG_MLX4_EN=m
+CONFIG_NET_VENDOR_MYRI=y
 CONFIG_MYRI10GE=m
-CONFIG_NETXEN_NIC=m
+CONFIG_NET_VENDOR_NVIDIA=y
+CONFIG_NET_VENDOR_PASEMI=y
 CONFIG_PASEMI_MAC=y
-CONFIG_MLX4_EN=m
+CONFIG_NET_VENDOR_QLOGIC=y
 CONFIG_QLGE=m
-CONFIG_BE2NET=m
-CONFIG_ISERIES_VETH=m
+CONFIG_NETXEN_NIC=m
+CONFIG_NET_VENDOR_SUN=y
+CONFIG_SUNGEM=y
+CONFIG_NET_VENDOR_TOSHIBA=y
+CONFIG_GELIC_NET=m
+CONFIG_GELIC_WIRELESS=y
+CONFIG_SPIDER_NET=m
 CONFIG_PPP=m
 CONFIG_PPP_ASYNC=m
 CONFIG_PPP_SYNC_TTY=m
@@ -331,7 +325,6 @@ CONFIG_USB=y
 CONFIG_USB_DEVICEFS=y
 CONFIG_USB_MON=m
 CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_TT_NEWSCHED=y
 # CONFIG_USB_EHCI_HCD_PPC_OF is not set
 CONFIG_USB_OHCI_HCD=y
 CONFIG_USB_STORAGE=m
@@ -373,11 +366,9 @@ CONFIG_JFS_POSIX_ACL=y
 CONFIG_JFS_SECURITY=y
 CONFIG_XFS_FS=m
 CONFIG_XFS_POSIX_ACL=y
-CONFIG_OCFS2_FS=m
 CONFIG_BTRFS_FS=m
 CONFIG_BTRFS_FS_POSIX_ACL=y
 CONFIG_NILFS2_FS=m
-CONFIG_INOTIFY=y
 CONFIG_AUTOFS4_FS=m
 CONFIG_FUSE_FS=m
 CONFIG_ISO9660_FS=y
@@ -398,7 +389,6 @@ CONFIG_ROOT_NFS=y
 CONFIG_NFSD=m
 CONFIG_NFSD_V3_ACL=y
 CONFIG_NFSD_V4=y
-CONFIG_RPCSEC_GSS_SPKM3=m
 CONFIG_CIFS=m
 CONFIG_CIFS_XATTR=y
 CONFIG_CIFS_POSIX=y
@@ -444,15 +434,13 @@ CONFIG_CRC_T10DIF=y
 CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_KERNEL=y
 CONFIG_LOCKUP_DETECTOR=y
-CONFIG_DETECT_HUNG_TASK=y
 CONFIG_DEBUG_MUTEXES=y
-# CONFIG_RCU_CPU_STALL_DETECTOR is not set
+CONFIG_DEBUG_STACK_USAGE=y
 CONFIG_LATENCYTOP=y
 CONFIG_SYSCTL_SYSCALL_CHECK=y
 CONFIG_SCHED_TRACER=y
 CONFIG_BLK_DEV_IO_TRACE=y
 CONFIG_DEBUG_STACKOVERFLOW=y
-CONFIG_DEBUG_STACK_USAGE=y
 CONFIG_CODE_PATCHING_SELFTEST=y
 CONFIG_FTR_FIXUP_SELFTEST=y
 CONFIG_MSI_BITMAP_SELFTEST=y
@@ -463,10 +451,8 @@ CONFIG_CRYPTO_NULL=m
 CONFIG_CRYPTO_TEST=m
 CONFIG_CRYPTO_CCM=m
 CONFIG_CRYPTO_GCM=m
-CONFIG_CRYPTO_ECB=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MD4=m
 CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA256=m
 CONFIG_CRYPTO_SHA512=m
@@ -474,7 +460,6 @@ CONFIG_CRYPTO_TGR192=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_AES=m
 CONFIG_CRYPTO_ANUBIS=m
-CONFIG_CRYPTO_ARC4=m
 CONFIG_CRYPTO_BLOWFISH=m
 CONFIG_CRYPTO_CAST6=m
 CONFIG_CRYPTO_KHAZAD=m
-- 
1.7.5.4

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

^ permalink raw reply related

* Re: linux-next: build warning after merge of the mips tree
From: Stephen Rothwell @ 2011-08-22  0:48 UTC (permalink / raw)
  To: Ralf Baechle; +Cc: linux-next, linux-kernel
In-Reply-To: <20110821094302.e46933704cd74ab7728bfc74@canb.auug.org.au>

[-- Attachment #1: Type: text/plain, Size: 524 bytes --]

Hi Ralf,

On Sun, 21 Aug 2011 09:43:02 +1000 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> The mips tree today seems like a complete mess.  It seem to be some
> historical tree including commits with commit dates going back to 1994
> and v1.1.68!  Please fix it up as it is unusable in its current form.

Since it hasn't been fixed yet, I have reset the mips tree to be what it
was in next-20110819.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* linux-next: build warning after merge of the mips tree
From: Stephen Rothwell @ 2011-08-20 23:43 UTC (permalink / raw)
  To: Ralf Baechle; +Cc: linux-next, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 333 bytes --]

Hi Ralf,

The mips tree today seems like a complete mess.  It seem to be some
historical tree including commits with commit dates going back to 1994
and v1.1.68!  Please fix it up as it is unusable in its current form.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* Re: linux-next: build failure after merge of the final tree (pm tree related)
From: Pihet-XID, Jean @ 2011-08-20  7:50 UTC (permalink / raw)
  To: Rafael J. Wysocki; +Cc: Stephen Rothwell, linux-next, linux-kernel
In-Reply-To: <201108192358.51522.rjw@sisk.pl>

Rafael,

2011/8/19 Rafael J. Wysocki <rjw@sisk.pl>:
> On Friday, August 19, 2011, Pihet-XID, Jean wrote:
>> Hi Stephen, Rafael,
>>
>> On Fri, Aug 19, 2011 at 5:03 AM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>> > Hi all,
>> >
>> > After merging the final tree, today's linux-next build (powerpc
>> > allnoconfig) failed like this:
>> >
>> > In file included from include/linux/netdevice.h:34:0,
>> >                 from include/linux/icmpv6.h:173,
>> >                 from include/linux/ipv6.h:220,
>> >                 from include/net/ipv6.h:16,
>> >                 from include/linux/sunrpc/clnt.h:25,
>> >                 from include/linux/nfs_fs.h:50,
>> >                 from init/do_mounts.c:20:
>> > include/linux/pm_qos.h: In function 'dev_pm_qos_add_request':
>> > include/linux/pm_qos.h:123:6: warning: 'return' with no value, in function returning non-void
>> > include/linux/pm_qos.h: In function 'dev_pm_qos_update_request':
>> > include/linux/pm_qos.h:126:6: warning: 'return' with no value, in function returning non-void
>> > include/linux/pm_qos.h: In function 'dev_pm_qos_remove_request':
>> > include/linux/pm_qos.h:128:6: warning: 'return' with no value, in function returning non-void
>> >
>> > Caused by commit b6d5b88750dc ("PM QoS: Implement per-device PM QoS
>> > constraints").
>> I am really sorry about this. This build failure is indeed due to my
>> patch which has stubs for the !PM case.
>> Here is an updated patch (attached), the only change is in the stubs.
>>
>> >
>> > Please, please compile test with CONFIG options that your patch depends
>> > on switched on and switched off - in this case CONFIG_PM.
>> Well, it is not as easy as it seems. As the patch set describes, I am
>> build testing for x86 and OMAP. At the moment due to config
>> dependencies it is _impossible_ to disable PM in the OMAP config.
>>
>> Also I cannot build test every platform out there.
>> Do you have a procedure for build testing?
>>
>> >
>> > I have reverted that commit (and the followinf commit 57afcf09649c ("PM
>> > QoS: Add global notification mechanism for device constraints")) for
>> > today.
>> Can we have the updated version merged in?
>
> Merged and pushed back.
Thanks a lot! Sorry for the noise.

Regards,
Jean

>
> Thanks,
> Rafael
>

^ permalink raw reply

* Re: linux-next: build failure after merge of the final tree (pm tree related)
From: Rafael J. Wysocki @ 2011-08-19 21:58 UTC (permalink / raw)
  To: Pihet-XID, Jean; +Cc: Stephen Rothwell, linux-next, linux-kernel
In-Reply-To: <CAN5iSWpGKF4qu5yqeDk=nxvq0tVs6+mozAEJ+FLdh=Ryx-hsEA@mail.gmail.com>

On Friday, August 19, 2011, Pihet-XID, Jean wrote:
> Hi Stephen, Rafael,
> 
> On Fri, Aug 19, 2011 at 5:03 AM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> > Hi all,
> >
> > After merging the final tree, today's linux-next build (powerpc
> > allnoconfig) failed like this:
> >
> > In file included from include/linux/netdevice.h:34:0,
> >                 from include/linux/icmpv6.h:173,
> >                 from include/linux/ipv6.h:220,
> >                 from include/net/ipv6.h:16,
> >                 from include/linux/sunrpc/clnt.h:25,
> >                 from include/linux/nfs_fs.h:50,
> >                 from init/do_mounts.c:20:
> > include/linux/pm_qos.h: In function 'dev_pm_qos_add_request':
> > include/linux/pm_qos.h:123:6: warning: 'return' with no value, in function returning non-void
> > include/linux/pm_qos.h: In function 'dev_pm_qos_update_request':
> > include/linux/pm_qos.h:126:6: warning: 'return' with no value, in function returning non-void
> > include/linux/pm_qos.h: In function 'dev_pm_qos_remove_request':
> > include/linux/pm_qos.h:128:6: warning: 'return' with no value, in function returning non-void
> >
> > Caused by commit b6d5b88750dc ("PM QoS: Implement per-device PM QoS
> > constraints").
> I am really sorry about this. This build failure is indeed due to my
> patch which has stubs for the !PM case.
> Here is an updated patch (attached), the only change is in the stubs.
> 
> >
> > Please, please compile test with CONFIG options that your patch depends
> > on switched on and switched off - in this case CONFIG_PM.
> Well, it is not as easy as it seems. As the patch set describes, I am
> build testing for x86 and OMAP. At the moment due to config
> dependencies it is _impossible_ to disable PM in the OMAP config.
> 
> Also I cannot build test every platform out there.
> Do you have a procedure for build testing?
> 
> >
> > I have reverted that commit (and the followinf commit 57afcf09649c ("PM
> > QoS: Add global notification mechanism for device constraints")) for
> > today.
> Can we have the updated version merged in?

Merged and pushed back.

Thanks,
Rafael

^ permalink raw reply

* Re: linux-next: build failure after merge of the pm tree
From: Rafael J. Wysocki @ 2011-08-19 21:31 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: linux-next, linux-kernel
In-Reply-To: <20110819234756.ef70fa07dccb6adc17d2f516@canb.auug.org.au>

Hi,

On Friday, August 19, 2011, Stephen Rothwell wrote:
> Hi Rafael,
> 
> After merging the pm tree, today's linux-next build (most of the arm and
> avr32 builds at least) failed like this:
> 
> In file included from drivers/base/power/clock_ops.c:14:
> include/linux/pm_clock.h:15: error: field 'nb' has incomplete type

Sorry about that.

> You need to include something that defines "struct notifier_block".

Right, should be fixed now.

Thanks,
Rafael

^ permalink raw reply

* Re: linux-next: build failure after merge of the final tree (pm tree related)
From: Randy Dunlap @ 2011-08-19 20:33 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Pihet-XID, Jean, Rafael J. Wysocki, linux-next, linux-kernel
In-Reply-To: <20110819233950.e526ac71ca862f45538b8721@canb.auug.org.au>

On Fri, 19 Aug 2011 23:39:50 +1000 Stephen Rothwell wrote:

> Hi, 
> 
> On Fri, 19 Aug 2011 10:14:11 +0200 "Pihet-XID, Jean" <j-pihet@ti.com> wrote:
> >
> > Well, it is not as easy as it seems. As the patch set describes, I am
> > build testing for x86 and OMAP. At the moment due to config
> > dependencies it is _impossible_ to disable PM in the OMAP config.
> > 
> > Also I cannot build test every platform out there.
> > Do you have a procedure for build testing?
> 
> I do not expect developers (or even maintainers) to build for every
> architecture/platform  - that is partly what linux-next is for (see
> http://kisskb.ellerman.id.au/linux-next ).  It is good to see you at
> least thought about the !PM case.  Can't it be turned off in x86?

Sure it can.  For mainline -rc and 3.x releases, I am trying to build
an almost-allmodconfig kernel (x86_64 only) with one major option
disabled.  The $major option that is disabled is one of each of the
following:
  BLOCK HOTPLUG INET INPUT MAGIC_SYSRQ NET PCI PM PROC_FS SMP SYSCTL SYSFS

There used to be several build errors for HOTPLUG or MAGIC_SYSRQ disabled,
but those aren't finding problems lately like they used to.  I could probably
drop them.


> I am a bit sensitive about these sort of build errors as I see it happen
> way to often that a developer make a typo in the !CONFIG_XXX stubs.


---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

^ permalink raw reply

* Re: [PATCH -next] power: max8998_charger.c needs module.h
From: Anton Vorontsov @ 2011-08-19 17:02 UTC (permalink / raw)
  To: Randy Dunlap; +Cc: Stephen Rothwell, David Woodhouse, linux-next, LKML, akpm
In-Reply-To: <20110729211143.0a9d6ed7.rdunlap@xenotime.net>

On Fri, Jul 29, 2011 at 09:11:43PM -0700, Randy Dunlap wrote:
> From: Randy Dunlap <rdunlap@xenotime.net>
> 
> power/max8998_charger.c uses interfaces from linux/module.h,
> so it should include that file.  This fixes build errors.
> 
> Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
> ---

Applied, thank you!

-- 
Anton Vorontsov
Email: cbouatmailru@gmail.com

^ permalink raw reply

* Re: [PATCH linux-next] mfd: omap-usb-host: add module.h and export.h to fix build break
From: Paul Gortmaker @ 2011-08-19 15:48 UTC (permalink / raw)
  To: Anand Gadiyar; +Cc: linux-kernel, linux-next, Samuel Ortiz
In-Reply-To: <1313767445-20033-1-git-send-email-gadiyar@ti.com>

On 11-08-19 11:24 AM, Anand Gadiyar wrote:
> linux-next as of 20110817 fails to build if these two headers
> are not included. Including module.h is sufficient for now,
> but add export.h for EXPORT_SYMBOL and THIS_MODULE in advance
> to avoid a later build break.

Thanks -- We won't need to add both, since module.h will source
the export.h itself.    And we can't add export.h to mainline just
yet, since it won't exist there (it is only in linux-next now.)

I'll just add the right one to this file in the existing mtd patch.

Thanks for the report.

Paul.

> 
> Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
> Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
> Cc: Samuel Ortiz <sameo@linux.intel.com>
> ---
> Noticed this while testing another patch. I see similar
> changes to other files in drivers/mfd made by Paul recently.
> 
>  drivers/mfd/omap-usb-host.c |    2 ++
>  1 file changed, 2 insertions(+)
> 
> Index: linux-2.6/drivers/mfd/omap-usb-host.c
> ===================================================================
> --- linux-2.6.orig/drivers/mfd/omap-usb-host.c
> +++ linux-2.6/drivers/mfd/omap-usb-host.c
> @@ -20,6 +20,8 @@
>  #include <linux/types.h>
>  #include <linux/slab.h>
>  #include <linux/delay.h>
> +#include <linux/export.h>
> +#include <linux/module.h>
>  #include <linux/platform_device.h>
>  #include <linux/clk.h>
>  #include <linux/dma-mapping.h>

^ permalink raw reply

* [PATCH linux-next] mfd: omap-usb-host: add module.h and export.h to fix build break
From: Anand Gadiyar @ 2011-08-19 15:24 UTC (permalink / raw)
  To: linux-kernel, linux-next; +Cc: Anand Gadiyar, Paul Gortmaker, Samuel Ortiz

linux-next as of 20110817 fails to build if these two headers
are not included. Including module.h is sufficient for now,
but add export.h for EXPORT_SYMBOL and THIS_MODULE in advance
to avoid a later build break.

Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
Cc: Samuel Ortiz <sameo@linux.intel.com>
---
Noticed this while testing another patch. I see similar
changes to other files in drivers/mfd made by Paul recently.

 drivers/mfd/omap-usb-host.c |    2 ++
 1 file changed, 2 insertions(+)

Index: linux-2.6/drivers/mfd/omap-usb-host.c
===================================================================
--- linux-2.6.orig/drivers/mfd/omap-usb-host.c
+++ linux-2.6/drivers/mfd/omap-usb-host.c
@@ -20,6 +20,8 @@
 #include <linux/types.h>
 #include <linux/slab.h>
 #include <linux/delay.h>
+#include <linux/export.h>
+#include <linux/module.h>
 #include <linux/platform_device.h>
 #include <linux/clk.h>
 #include <linux/dma-mapping.h>

^ permalink raw reply

* Re: linux-next: manual merge of the wireless tree with the net tree
From: John W. Linville @ 2011-08-19  1:03 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: linux-next, linux-kernel, Jiri Pirko, David Miller, netdev
In-Reply-To: <20110819105946.a46aa8a997f466d8a2e7f2f3@canb.auug.org.au>

On Fri, Aug 19, 2011 at 10:59:46AM +1000, Stephen Rothwell wrote:
> Hi John,
> 
> Today's linux-next merge of the wireless tree got a conflict in
> drivers/staging/ath6kl/os/linux/ar6000_drv.c between commit afc4b13df143
> ("net: remove use of ndo_set_multicast_list in drivers") from the net
> tree and commit af2bf4b4ee58 ("staging: remove ath6kl") from the wireless
> tree.
> 
> I just removed the file.

Cool, thanks.  I imagine that any more "bombing runs" that touch
ath6kl in staging will be able to resolved in the same fashion.

Thanks!

John
-- 
John W. Linville		Someday the world will need a hero, and you
linville@tuxdriver.com			might be all we have.  Be ready.

^ permalink raw reply

* linux-next: build failure after merge of the pm tree
From: Stephen Rothwell @ 2011-08-19 13:47 UTC (permalink / raw)
  To: Rafael J. Wysocki; +Cc: linux-next, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 438 bytes --]

Hi Rafael,

After merging the pm tree, today's linux-next build (most of the arm and
avr32 builds at least) failed like this:

In file included from drivers/base/power/clock_ops.c:14:
include/linux/pm_clock.h:15: error: field 'nb' has incomplete type

You need to include something that defines "struct notifier_block".

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* Re: linux-next: build failure after merge of the final tree (pm tree related)
From: Stephen Rothwell @ 2011-08-19 13:39 UTC (permalink / raw)
  To: Pihet-XID, Jean; +Cc: Rafael J. Wysocki, linux-next, linux-kernel
In-Reply-To: <CAN5iSWpGKF4qu5yqeDk=nxvq0tVs6+mozAEJ+FLdh=Ryx-hsEA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 927 bytes --]

Hi, 

On Fri, 19 Aug 2011 10:14:11 +0200 "Pihet-XID, Jean" <j-pihet@ti.com> wrote:
>
> Well, it is not as easy as it seems. As the patch set describes, I am
> build testing for x86 and OMAP. At the moment due to config
> dependencies it is _impossible_ to disable PM in the OMAP config.
> 
> Also I cannot build test every platform out there.
> Do you have a procedure for build testing?

I do not expect developers (or even maintainers) to build for every
architecture/platform  - that is partly what linux-next is for (see
http://kisskb.ellerman.id.au/linux-next ).  It is good to see you at
least thought about the !PM case.  Can't it be turned off in x86?

I am a bit sensitive about these sort of build errors as I see it happen
way to often that a developer make a typo in the !CONFIG_XXX stubs.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* Re: linux-next: build failure after merge of the final tree (pm tree related)
From: Pihet-XID, Jean @ 2011-08-19  8:14 UTC (permalink / raw)
  To: Stephen Rothwell, Rafael J. Wysocki; +Cc: linux-next, linux-kernel
In-Reply-To: <20110819130328.ee5c4b7191db0ce2c8a02e39@canb.auug.org.au>

[-- Attachment #1: Type: text/plain, Size: 2188 bytes --]

Hi Stephen, Rafael,

On Fri, Aug 19, 2011 at 5:03 AM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> Hi all,
>
> After merging the final tree, today's linux-next build (powerpc
> allnoconfig) failed like this:
>
> In file included from include/linux/netdevice.h:34:0,
>                 from include/linux/icmpv6.h:173,
>                 from include/linux/ipv6.h:220,
>                 from include/net/ipv6.h:16,
>                 from include/linux/sunrpc/clnt.h:25,
>                 from include/linux/nfs_fs.h:50,
>                 from init/do_mounts.c:20:
> include/linux/pm_qos.h: In function 'dev_pm_qos_add_request':
> include/linux/pm_qos.h:123:6: warning: 'return' with no value, in function returning non-void
> include/linux/pm_qos.h: In function 'dev_pm_qos_update_request':
> include/linux/pm_qos.h:126:6: warning: 'return' with no value, in function returning non-void
> include/linux/pm_qos.h: In function 'dev_pm_qos_remove_request':
> include/linux/pm_qos.h:128:6: warning: 'return' with no value, in function returning non-void
>
> Caused by commit b6d5b88750dc ("PM QoS: Implement per-device PM QoS
> constraints").
I am really sorry about this. This build failure is indeed due to my
patch which has stubs for the !PM case.
Here is an updated patch (attached), the only change is in the stubs.

>
> Please, please compile test with CONFIG options that your patch depends
> on switched on and switched off - in this case CONFIG_PM.
Well, it is not as easy as it seems. As the patch set describes, I am
build testing for x86 and OMAP. At the moment due to config
dependencies it is _impossible_ to disable PM in the OMAP config.

Also I cannot build test every platform out there.
Do you have a procedure for build testing?

>
> I have reverted that commit (and the followinf commit 57afcf09649c ("PM
> QoS: Add global notification mechanism for device constraints")) for
> today.
Can we have the updated version merged in?
Meanwhile I am trying a build with a non PM config.

Kind regards,
Jean

>
> --
> Cheers,
> Stephen Rothwell                    sfr@canb.auug.org.au
> http://www.canb.auug.org.au/~sfr/
>

[-- Attachment #2: 0006-PM-QoS-implement-the-per-device-PM-QoS-constraints.patch --]
[-- Type: text/x-patch, Size: 16989 bytes --]

From a75badc8e0126bc55a8b16510c7beb60fa313f89 Mon Sep 17 00:00:00 2001
From: Jean Pihet <j-pihet@ti.com>
Date: Mon, 8 Aug 2011 16:16:39 +0200
Subject: [PATCH 6/7] PM QoS: implement the per-device PM QoS constraints

Implement the per-device PM QoS constraints by creating a device
PM QoS API, which calls the PM QoS constraints management core code.

The per-device latency constraints data strctures are stored
in the device dev_pm_info struct.

The device PM code calls the init and destroy of the per-device constraints
data struct in order to support the dynamic insertion and removal of the
devices in the system.

To minimize the data usage by the per-device constraints, the data struct
is only allocated at the first call to dev_pm_qos_add_request.
The data is later free'd when the device is removed from the system.
A global mutex protects the constraints users from the data being
allocated and free'd.

Signed-off-by: Jean Pihet <j-pihet@ti.com>
---
 drivers/base/power/Makefile |    4 +-
 drivers/base/power/main.c   |    3 +
 drivers/base/power/qos.c    |  339 +++++++++++++++++++++++++++++++++++++++++++
 include/linux/pm.h          |    9 +
 include/linux/pm_qos.h      |   42 ++++++
 5 files changed, 395 insertions(+), 2 deletions(-)
 create mode 100644 drivers/base/power/qos.c

diff --git a/drivers/base/power/Makefile b/drivers/base/power/Makefile
index 2639ae7..b707447 100644
--- a/drivers/base/power/Makefile
+++ b/drivers/base/power/Makefile
@@ -1,4 +1,4 @@
-obj-$(CONFIG_PM)	+= sysfs.o generic_ops.o
+obj-$(CONFIG_PM)	+= sysfs.o generic_ops.o qos.o
 obj-$(CONFIG_PM_SLEEP)	+= main.o wakeup.o
 obj-$(CONFIG_PM_RUNTIME)	+= runtime.o
 obj-$(CONFIG_PM_TRACE_RTC)	+= trace.o
@@ -6,4 +6,4 @@ obj-$(CONFIG_PM_OPP)	+= opp.o
 obj-$(CONFIG_PM_GENERIC_DOMAINS)	+=  domain.o
 obj-$(CONFIG_HAVE_CLK)	+= clock_ops.o
 
-ccflags-$(CONFIG_DEBUG_DRIVER) := -DDEBUG
\ No newline at end of file
+ccflags-$(CONFIG_DEBUG_DRIVER) := -DDEBUG
diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c
index a854591..956443f 100644
--- a/drivers/base/power/main.c
+++ b/drivers/base/power/main.c
@@ -22,6 +22,7 @@
 #include <linux/mutex.h>
 #include <linux/pm.h>
 #include <linux/pm_runtime.h>
+#include <linux/pm_qos.h>
 #include <linux/resume-trace.h>
 #include <linux/interrupt.h>
 #include <linux/sched.h>
@@ -97,6 +98,7 @@ void device_pm_add(struct device *dev)
 			dev_name(dev->parent));
 	list_add_tail(&dev->power.entry, &dpm_list);
 	mutex_unlock(&dpm_list_mtx);
+	dev_pm_qos_constraints_init(dev);
 }
 
 /**
@@ -107,6 +109,7 @@ void device_pm_remove(struct device *dev)
 {
 	pr_debug("PM: Removing info for %s:%s\n",
 		 dev->bus ? dev->bus->name : "No Bus", dev_name(dev));
+	dev_pm_qos_constraints_destroy(dev);
 	complete_all(&dev->power.completion);
 	mutex_lock(&dpm_list_mtx);
 	list_del_init(&dev->power.entry);
diff --git a/drivers/base/power/qos.c b/drivers/base/power/qos.c
new file mode 100644
index 0000000..9c0a00d
--- /dev/null
+++ b/drivers/base/power/qos.c
@@ -0,0 +1,339 @@
+/*
+ * Devices PM QoS constraints management
+ *
+ * Copyright (C) 2011 Texas Instruments, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ *
+ * This module exposes the interface to kernel space for specifying
+ * per-device PM QoS dependencies. It provides infrastructure for registration
+ * of:
+ *
+ * Dependents on a QoS value : register requests
+ * Watchers of QoS value : get notified when target QoS value changes
+ *
+ * This QoS design is best effort based. Dependents register their QoS needs.
+ * Watchers register to keep track of the current QoS needs of the system.
+ *
+ * Note about the per-device constraint data struct allocation:
+ * . The per-device constraints data struct ptr is tored into the device
+ *    dev_pm_info.
+ * . To minimize the data usage by the per-device constraints, the data struct
+ *   is only allocated at the first call to dev_pm_qos_add_request.
+ * . The data is later free'd when the device is removed from the system.
+ * . The constraints_state variable from dev_pm_info tracks the data struct
+ *    allocation state:
+ *    DEV_PM_QOS_NO_DEVICE: No device present or device removed, no data
+ *     allocated,
+ *    DEV_PM_QOS_DEVICE_PRESENT: Device present, data not allocated and will be
+ *     allocated at the first call to dev_pm_qos_add_request,
+ *    DEV_PM_QOS_ALLOCATED: Device present, data allocated. The per-device
+ *     PM QoS constraints framework is operational and constraints can be
+ *     added, updated or removed using the dev_pm_qos_* API.
+ *  . A global mutex protects the constraints users from the data being
+ *     allocated and free'd.
+ */
+
+#include <linux/pm_qos.h>
+#include <linux/spinlock.h>
+#include <linux/slab.h>
+#include <linux/device.h>
+#include <linux/mutex.h>
+
+
+static DEFINE_MUTEX(dev_pm_qos_mtx);
+
+/*
+ * dev_pm_qos_constraints_allocate
+ * @dev: device to allocate data for
+ *
+ * Called at the first call to add_request, for constraint data allocation
+ * Must be called with the dev_pm_qos_mtx mutex held
+ */
+static int dev_pm_qos_constraints_allocate(struct device *dev)
+{
+	struct pm_qos_constraints *c;
+	struct blocking_notifier_head *n;
+
+	c = kzalloc(sizeof(*c), GFP_KERNEL);
+	if (!c)
+		return -ENOMEM;
+
+	n = kzalloc(sizeof(*n), GFP_KERNEL);
+	if (!n) {
+		kfree(c);
+		return -ENOMEM;
+	}
+	BLOCKING_INIT_NOTIFIER_HEAD(n);
+
+	dev->power.constraints = c;
+	plist_head_init(&dev->power.constraints->list);
+	dev->power.constraints->target_value = PM_QOS_DEV_LAT_DEFAULT_VALUE;
+	dev->power.constraints->default_value =	PM_QOS_DEV_LAT_DEFAULT_VALUE;
+	dev->power.constraints->type = PM_QOS_MIN;
+	dev->power.constraints->notifiers = n;
+	dev->power.constraints_state = DEV_PM_QOS_ALLOCATED;
+
+	return 0;
+}
+
+/**
+ * dev_pm_qos_constraints_init
+ * @dev: target device
+ *
+ * Called from the device PM subsystem at device insertion
+ */
+void dev_pm_qos_constraints_init(struct device *dev)
+{
+	mutex_lock(&dev_pm_qos_mtx);
+	dev->power.constraints_state = DEV_PM_QOS_DEVICE_PRESENT;
+	mutex_unlock(&dev_pm_qos_mtx);
+}
+
+/**
+ * dev_pm_qos_constraints_destroy
+ * @dev: target device
+ *
+ * Called from the device PM subsystem at device removal
+ */
+void dev_pm_qos_constraints_destroy(struct device *dev)
+{
+	struct dev_pm_qos_request *req, *tmp;
+
+	mutex_lock(&dev_pm_qos_mtx);
+
+	if (dev->power.constraints_state == DEV_PM_QOS_ALLOCATED) {
+		/* Flush the constraints list for the device */
+		plist_for_each_entry_safe(req, tmp,
+					  &dev->power.constraints->list,
+					  node) {
+			/*
+			 * Update constraints list and call the per-device
+			 * callbacks if needed
+			 */
+			pm_qos_update_target(req->dev->power.constraints,
+					   &req->node, PM_QOS_REMOVE_REQ,
+					   PM_QOS_DEFAULT_VALUE);
+			memset(req, 0, sizeof(*req));
+		}
+
+		kfree(dev->power.constraints->notifiers);
+		kfree(dev->power.constraints);
+		dev->power.constraints = NULL;
+	}
+	dev->power.constraints_state = DEV_PM_QOS_NO_DEVICE;
+
+	mutex_unlock(&dev_pm_qos_mtx);
+}
+
+/**
+ * dev_pm_qos_add_request - inserts new qos request into the list
+ * @dev: target device for the constraint
+ * @req: pointer to a preallocated handle
+ * @value: defines the qos request
+ *
+ * This function inserts a new entry in the device constraints list of
+ * requested qos performance characteristics. It recomputes the aggregate
+ * QoS expectations of parameters and initializes the dev_pm_qos_request
+ * handle.  Caller needs to save this handle for later use in updates and
+ * removal.
+ *
+ * Returns 1 if the aggregated constraint value has changed,
+ * 0 if the aggregated constraint value has not changed,
+ * -EINVAL in case of wrong parameters, -ENODEV if the device has been
+ * removed from the system
+ */
+int dev_pm_qos_add_request(struct device *dev, struct dev_pm_qos_request *req,
+			    s32 value)
+{
+	int ret = 0;
+
+	if (!dev || !req) /*guard against callers passing in null */
+		return -EINVAL;
+
+	if (dev_pm_qos_request_active(req)) {
+		WARN(1, KERN_ERR "dev_pm_qos_add_request() called for already "
+			"added request\n");
+		return -EINVAL;
+	}
+
+	mutex_lock(&dev_pm_qos_mtx);
+	req->dev = dev;
+
+	/* Return if the device has been removed */
+	if (req->dev->power.constraints_state == DEV_PM_QOS_NO_DEVICE) {
+		ret = -ENODEV;
+		goto out;
+	}
+
+	/*
+	 * Allocate the constraints data on the first call to add_request,
+	 * i.e. only if the data is not already allocated and if the device has
+	 * not been removed
+	 */
+	if (dev->power.constraints_state == DEV_PM_QOS_DEVICE_PRESENT)
+		ret = dev_pm_qos_constraints_allocate(dev);
+
+	if (!ret)
+		ret = pm_qos_update_target(dev->power.constraints, &req->node,
+					   PM_QOS_ADD_REQ, value);
+
+out:
+	mutex_unlock(&dev_pm_qos_mtx);
+	return ret;
+}
+EXPORT_SYMBOL_GPL(dev_pm_qos_add_request);
+
+/**
+ * dev_pm_qos_update_request - modifies an existing qos request
+ * @req : handle to list element holding a dev_pm_qos request to use
+ * @new_value: defines the qos request
+ *
+ * Updates an existing dev PM qos request along with updating the
+ * target value.
+ *
+ * Attempts are made to make this code callable on hot code paths.
+ *
+ * Returns 1 if the aggregated constraint value has changed,
+ * 0 if the aggregated constraint value has not changed,
+ * -EINVAL in case of wrong parameters, -ENODEV if the device has been
+ * removed from the system
+ */
+int dev_pm_qos_update_request(struct dev_pm_qos_request *req,
+			      s32 new_value)
+{
+	int ret = 0;
+
+	if (!req) /*guard against callers passing in null */
+		return -EINVAL;
+
+	if (!dev_pm_qos_request_active(req)) {
+		WARN(1, KERN_ERR "dev_pm_qos_update_request() called for "
+			"unknown object\n");
+		return -EINVAL;
+	}
+
+	mutex_lock(&dev_pm_qos_mtx);
+
+	if (req->dev->power.constraints_state == DEV_PM_QOS_ALLOCATED) {
+		if (new_value != req->node.prio)
+			ret = pm_qos_update_target(req->dev->power.constraints,
+						   &req->node,
+						   PM_QOS_UPDATE_REQ,
+						   new_value);
+	} else {
+		/* Return if the device has been removed */
+		ret = -ENODEV;
+	}
+
+	mutex_unlock(&dev_pm_qos_mtx);
+	return ret;
+}
+EXPORT_SYMBOL_GPL(dev_pm_qos_update_request);
+
+/**
+ * dev_pm_qos_remove_request - modifies an existing qos request
+ * @req: handle to request list element
+ *
+ * Will remove pm qos request from the list of constraints and
+ * recompute the current target value. Call this on slow code paths.
+ *
+ * Returns 1 if the aggregated constraint value has changed,
+ * 0 if the aggregated constraint value has not changed,
+ * -EINVAL in case of wrong parameters, -ENODEV if the device has been
+ * removed from the system
+ */
+int dev_pm_qos_remove_request(struct dev_pm_qos_request *req)
+{
+	int ret = 0;
+
+	if (!req) /*guard against callers passing in null */
+		return -EINVAL;
+
+	if (!dev_pm_qos_request_active(req)) {
+		WARN(1, KERN_ERR "dev_pm_qos_remove_request() called for "
+			"unknown object\n");
+		return -EINVAL;
+	}
+
+	mutex_lock(&dev_pm_qos_mtx);
+
+	if (req->dev->power.constraints_state == DEV_PM_QOS_ALLOCATED) {
+		ret = pm_qos_update_target(req->dev->power.constraints,
+					   &req->node, PM_QOS_REMOVE_REQ,
+					   PM_QOS_DEFAULT_VALUE);
+		memset(req, 0, sizeof(*req));
+	} else {
+		/* Return if the device has been removed */
+		ret = -ENODEV;
+	}
+
+	mutex_unlock(&dev_pm_qos_mtx);
+	return ret;
+}
+EXPORT_SYMBOL_GPL(dev_pm_qos_remove_request);
+
+/**
+ * dev_pm_qos_add_notifier - sets notification entry for changes to target value
+ * of per-device PM QoS constraints
+ *
+ * @dev: target device for the constraint
+ * @notifier: notifier block managed by caller.
+ *
+ * Will register the notifier into a notification chain that gets called
+ * upon changes to the target value for the device.
+ */
+int dev_pm_qos_add_notifier(struct device *dev, struct notifier_block *notifier)
+{
+	int retval = 0;
+
+	mutex_lock(&dev_pm_qos_mtx);
+
+	/* Silently return if the device has been removed */
+	if (dev->power.constraints_state != DEV_PM_QOS_ALLOCATED)
+		goto out;
+
+	retval = blocking_notifier_chain_register(
+			dev->power.constraints->notifiers,
+			notifier);
+
+out:
+	mutex_unlock(&dev_pm_qos_mtx);
+	return retval;
+}
+EXPORT_SYMBOL_GPL(dev_pm_qos_add_notifier);
+
+/**
+ * dev_pm_qos_remove_notifier - deletes notification for changes to target value
+ * of per-device PM QoS constraints
+ *
+ * @dev: target device for the constraint
+ * @notifier: notifier block to be removed.
+ *
+ * Will remove the notifier from the notification chain that gets called
+ * upon changes to the target value.
+ */
+int dev_pm_qos_remove_notifier(struct device *dev,
+			       struct notifier_block *notifier)
+{
+	int retval = 0;
+
+	mutex_lock(&dev_pm_qos_mtx);
+
+	/* Silently return if the device has been removed */
+	if (dev->power.constraints_state != DEV_PM_QOS_ALLOCATED)
+		goto out;
+
+	retval = blocking_notifier_chain_unregister(
+			dev->power.constraints->notifiers,
+			notifier);
+
+out:
+	mutex_unlock(&dev_pm_qos_mtx);
+	return retval;
+}
+EXPORT_SYMBOL_GPL(dev_pm_qos_remove_notifier);
+
diff --git a/include/linux/pm.h b/include/linux/pm.h
index f7c84c9..7a48951 100644
--- a/include/linux/pm.h
+++ b/include/linux/pm.h
@@ -421,6 +421,13 @@ enum rpm_request {
 
 struct wakeup_source;
 
+/* Per-device PM QoS constraints data struct state */
+enum dev_pm_qos_state {
+	DEV_PM_QOS_NO_DEVICE,		/* No device present */
+	DEV_PM_QOS_DEVICE_PRESENT,	/* Device present, data not allocated */
+	DEV_PM_QOS_ALLOCATED,		/* Device present, data allocated */
+};
+
 struct dev_pm_info {
 	pm_message_t		power_state;
 	unsigned int		can_wakeup:1;
@@ -463,6 +470,8 @@ struct dev_pm_info {
 	unsigned long		accounting_timestamp;
 #endif
 	void			*subsys_data;  /* Owned by the subsystem. */
+	struct pm_qos_constraints *constraints;
+	enum dev_pm_qos_state	constraints_state;
 };
 
 extern void update_pm_runtime_accounting(struct device *dev);
diff --git a/include/linux/pm_qos.h b/include/linux/pm_qos.h
index 84aa150..f75f74d 100644
--- a/include/linux/pm_qos.h
+++ b/include/linux/pm_qos.h
@@ -19,12 +19,18 @@
 #define PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE	(2000 * USEC_PER_SEC)
 #define PM_QOS_NETWORK_LAT_DEFAULT_VALUE	(2000 * USEC_PER_SEC)
 #define PM_QOS_NETWORK_THROUGHPUT_DEFAULT_VALUE	0
+#define PM_QOS_DEV_LAT_DEFAULT_VALUE		0
 
 struct pm_qos_request {
 	struct plist_node node;
 	int pm_qos_class;
 };
 
+struct dev_pm_qos_request {
+	struct plist_node node;
+	struct device *dev;
+};
+
 enum pm_qos_type {
 	PM_QOS_UNITIALIZED,
 	PM_QOS_MAX,		/* return the largest value */
@@ -51,6 +57,11 @@ enum pm_qos_req_action {
 	PM_QOS_REMOVE_REQ	/* Remove an existing request */
 };
 
+static inline int dev_pm_qos_request_active(struct dev_pm_qos_request *req)
+{
+	return req->dev != 0;
+}
+
 #ifdef CONFIG_PM
 int pm_qos_update_target(struct pm_qos_constraints *c, struct plist_node *node,
 			 enum pm_qos_req_action action, int value);
@@ -64,6 +75,17 @@ int pm_qos_request(int pm_qos_class);
 int pm_qos_add_notifier(int pm_qos_class, struct notifier_block *notifier);
 int pm_qos_remove_notifier(int pm_qos_class, struct notifier_block *notifier);
 int pm_qos_request_active(struct pm_qos_request *req);
+
+int dev_pm_qos_add_request(struct device *dev, struct dev_pm_qos_request *req,
+			   s32 value);
+int dev_pm_qos_update_request(struct dev_pm_qos_request *req, s32 new_value);
+int dev_pm_qos_remove_request(struct dev_pm_qos_request *req);
+int dev_pm_qos_add_notifier(struct device *dev,
+			    struct notifier_block *notifier);
+int dev_pm_qos_remove_notifier(struct device *dev,
+			       struct notifier_block *notifier);
+void dev_pm_qos_constraints_init(struct device *dev);
+void dev_pm_qos_constraints_destroy(struct device *dev);
 #else
 static inline int pm_qos_update_target(struct pm_qos_constraints *c,
 				       struct plist_node *node,
@@ -89,6 +111,26 @@ static inline int pm_qos_remove_notifier(int pm_qos_class,
 			{ return 0; }
 static inline int pm_qos_request_active(struct pm_qos_request *req)
 			{ return 0; }
+
+static inline int dev_pm_qos_add_request(struct device *dev,
+					 struct dev_pm_qos_request *req,
+					 s32 value)
+			{ return 0; }
+static inline int dev_pm_qos_update_request(struct dev_pm_qos_request *req,
+					    s32 new_value)
+			{ return 0; }
+static inline int dev_pm_qos_remove_request(struct dev_pm_qos_request *req)
+			{ return 0; }
+static inline int dev_pm_qos_add_notifier(struct device *dev,
+					  struct notifier_block *notifier)
+			{ return 0; }
+static inline int dev_pm_qos_remove_notifier(struct device *dev,
+					     struct notifier_block *notifier)
+			{ return 0; }
+static inline void dev_pm_qos_constraints_init(struct device *dev)
+			{ return; }
+static inline void dev_pm_qos_constraints_destroy(struct device *dev)
+			{ return; }
 #endif
 
 #endif
-- 
1.7.4.1


^ permalink raw reply related

* linux-next: Tree for Aug 19
From: Stephen Rothwell @ 2011-08-19  4:22 UTC (permalink / raw)
  To: linux-next; +Cc: LKML

[-- Attachment #1: Type: text/plain, Size: 15434 bytes --]

Hi all,

The powerpc allyesconfig build still fails today.

Changes since 20110818:

The wireless tree gained a conflict against the net tree.

The pm tree gained a build failure for which I reverted 2 commits.

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

I have created today's linux-next tree at
git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
(patches at http://www.kernel.org/pub/linux/kernel/v2.6/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 (if any), it is also built with powerpc allnoconfig (32 and
64 bit), ppc44x_defconfig and allyesconfig (minus
CONFIG_PROFILE_ALL_BRANCHES - this fails its final link) and i386, sparc
and sparc64 defconfig. These builds also have
CONFIG_ENABLE_WARN_DEPRECATED, CONFIG_ENABLE_MUST_CHECK and
CONFIG_DEBUG_INFO disabled when necessary.

Below is a summary of the state of the merge.

We are up to 199 trees (counting Linus' and 28 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 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                    sfr@canb.auug.org.au

$ git checkout master
$ git reset --hard stable
Merging origin/master
Merging fixes/fixes
Merging kbuild-current/rc-fixes
Merging arm-current/master
Merging m68k-current/for-linus
Merging powerpc-merge/merge
Merging 52xx-and-virtex-current/powerpc/merge
Merging sparc-current/master
Merging scsi-rc-fixes/master
Merging net-current/master
Merging sound-current/for-linus
Merging pci-current/for-linus
Merging wireless-current/master
Merging driver-core.current/driver-core-linus
Merging tty.current/tty-linus
Merging usb.current/usb-linus
Merging staging.current/staging-linus
Merging cpufreq-current/fixes
Merging input-current/for-linus
Merging md-current/for-linus
Merging audit-current/for-linus
Merging crypto-current/master
Merging ide-curent/master
Merging dwmw2/master
Merging sh-current/sh-fixes-for-linus
Merging rmobile-current/rmobile-fixes-for-linus
Merging fbdev-current/fbdev-fixes-for-linus
Merging devicetree-current/devicetree/merge
Merging spi-current/spi/merge
Merging arm/for-next
Merging arm-lpae/for-next
CONFLICT (content): Merge conflict in arch/arm/include/asm/pgalloc.h
CONFLICT (content): Merge conflict in arch/arm/include/asm/pgtable.h
CONFLICT (content): Merge conflict in arch/arm/include/asm/tlb.h
Merging arm-soc/for-next
Merging at91/at91-next
Merging davinci/davinci-next
Merging i.MX/for-next
Merging linux-spec/for-next
Merging msm/for-next
CONFLICT (content): Merge conflict in arch/arm/mach-msm/io.c
Merging omap/for-next
Merging pxa/for-next
Merging samsung/next-samsung
Merging s5p/for-next
Merging tegra/for-next
Merging ux500-core/ux500-core
Merging xilinx/arm-next
Merging blackfin/for-linus
Merging cris/for-next
Merging ia64/test
Merging m68k/for-next
Merging m68knommu/for-next
Merging microblaze/next
Merging mips/mips-for-linux-next
Merging openrisc/for-upstream
Merging parisc/for-next
Merging powerpc/next
Merging 4xx/next
Merging 52xx-and-virtex/powerpc/next
Merging galak/next
Merging s390/features
Merging sh/sh-latest
Merging rmobile/rmobile-latest
Merging sparc/master
Merging tile/master
Merging unicore32/unicore32
Merging xtensa/master
Merging ceph/for-next
Merging cifs/master
Merging configfs/linux-next
Merging ecryptfs/next
Merging ext3/for_next
Merging ext4/dev
Merging fatfs/master
Merging fuse/for-next
Merging gfs2/master
Merging hfsplus/for-next
Merging jfs/next
Merging logfs/master
Merging nfs/linux-next
Merging nfsd/nfsd-next
Merging nilfs2/for-next
Merging ocfs2/linux-next
Merging omfs/for-next
Merging squashfs/master
Merging udf/for_next
Merging v9fs/for-next
Merging ubifs/linux-next
Merging xfs/master
Applying: xfs: fix tracing builds inside the source tree
Merging vfs/for-next
Merging vfs-scale/vfs-scale-working
Merging pci/linux-next
Merging hid/for-next
Merging quilt/i2c
Merging bjdooks-i2c/next-i2c
Merging quilt/jdelvare-hwmon
Merging hwmon-staging/hwmon-next
Merging quilt/kernel-doc
Merging docs/docs-move
Merging v4l-dvb/master
Merging kbuild/for-next
Merging kconfig/for-next
Merging ide/master
Merging libata/NEXT
Merging infiniband/for-next
Merging acpi/test
Merging idle-test/idle-test
Merging powertools/tools-test
Merging cpupowerutils/master
Merging ieee1394/for-next
Merging ubi/linux-next
Merging dlm/next
Merging swiotlb/master
Merging ibft/master
Merging scsi/master
Merging iscsi-target/for-next
Merging slave-dma/next
Merging async_tx/next
Merging net/master
Merging wireless/master
CONFLICT (delete/modify): drivers/staging/ath6kl/miscdrv/ar3kps/ar3kpsparser.c deleted in wireless/master and modified in HEAD. Version HEAD of drivers/staging/ath6kl/miscdrv/ar3kps/ar3kpsparser.c left in tree.
CONFLICT (delete/modify): drivers/staging/ath6kl/os/linux/ar6000_drv.c deleted in wireless/master and modified in HEAD. Version HEAD of drivers/staging/ath6kl/os/linux/ar6000_drv.c left in tree.
$ git rm -f drivers/staging/ath6kl/miscdrv/ar3kps/ar3kpsparser.c
$ git rm -f drivers/staging/ath6kl/os/linux/ar6000_drv.c
Merging bluetooth/master
Merging mtd/master
Merging l2-mtd/master
CONFLICT (content): Merge conflict in drivers/mtd/maps/lantiq-flash.c
Merging crypto/master
Merging sound/for-next
Merging sound-asoc/for-next
Merging cpufreq/next
Merging quilt/rr
Merging input/next
Merging input-mt/next
Merging lsm/for-next
Merging block/for-next
Merging quilt/device-mapper
Merging embedded/master
Merging firmware/master
Merging pcmcia/master
Merging battery/master
Merging leds/for-mm
CONFLICT (content): Merge conflict in drivers/leds/Kconfig
Merging backlight/for-mm
Merging mmc/mmc-next
Merging kgdb/kgdb-next
Merging slab/for-next
Merging uclinux/for-next
Merging md/for-next
Merging mfd/for-next
Merging hdlc/hdlc-next
Merging drm/drm-next
Merging fbdev/master
Merging viafb/viafb-next
Merging omap_dss2/for-next
Merging voltage/for-next
Merging security/next
Merging selinux/master
Merging lblnet/master
Merging agp/agp-next
Merging watchdog/master
Merging bdev/master
Merging dwmw2-iommu/master
Merging cputime/cputime
Merging osd/linux-next
Merging jc_docs/docs-next
Merging nommu/master
Merging trivial/for-next
Merging audit/for-next
Merging pm/linux-next
Merging apm/for-next
Merging fsnotify/for-next
Merging irda/for-next
Merging i7core_edac/linux_next
Merging i7300_edac/linux_next
CONFLICT (content): Merge conflict in arch/x86/kernel/cpu/mcheck/mce.c
Merging devicetree/devicetree/next
CONFLICT (content): Merge conflict in drivers/of/base.c
Merging spi/spi/next
Merging gpio/gpio/next
Merging tip/auto-latest
CONFLICT (content): Merge conflict in arch/x86/mm/fault.c
Merging rcu/rcu/next
Merging kvm/linux-next
Merging oprofile/for-next
Merging ptrace/ptrace
Merging xen/upstream/xen
CONFLICT (content): Merge conflict in arch/x86/xen/Makefile
Merging xen-two/linux-next
Merging xen-pvhvm/linux-next
Merging edac-amd/for-next
Merging percpu/for-next
Merging workqueues/for-next
Merging sfi/sfi-test
Merging asm-generic/next
Merging drivers-x86/linux-next
Merging hwpoison/hwpoison
Merging sysctl/master
Merging namespace/master
Merging regmap/for-next
Merging driver-core/driver-core-next
Merging tty/tty-next
Merging usb/usb-next
Merging staging/staging-next
Merging bkl-config/config
Merging tmem/linux-next
Merging writeback/next
Merging arm-dt/devicetree/arm-next
Merging scsi-post-merge/merge-base:master
Merging moduleh/module.h-split
CONFLICT (content): Merge conflict in include/linux/dmaengine.h
Applying: dm: use export.h instead of module.h where possible
Applying: block: bsg-lib.c needs export.h not module.h
Applying: PM: EXPORT_SYMBOL needs export.h
$ git checkout akpm
Applying: Expand root=PARTUUID=UUID syntax to support selecting a root partition by
Applying: This patch makes two changes:
Applying: On thread exit shm_exit_ns() is called, it uses shm_ids(ns).rw_mutex.  It
Applying: Because of x86-implement-strict-user-copy-checks-for-x86_64.patch
Applying: When no floppy is found the module code can be released while a timer
Applying: The parameter's origin type is long.  On an i386 architecture, it can
Applying: Add support for Aspire 1410 BIOS v1.3314.  Fixes the following error:
Applying: This makes the iris driver use the platform API, so it is properly exposed
Applying: On x86_32 casting the unsigned int result of get_random_int() to long may
Applying: This new driver replaces the old PCEngines Alix 2/3 LED driver with a new
Applying: Cc: Ed Wildgoose <git@wildgooses.com>
Applying: Replace the bubble sort in sanitize_e820_map() with a call to the generic
Applying: The x86 timer interrupt handler is the only handler not traced in the
Applying: The current interrupt traces from irq_handler_entry and irq_handler_exit
Applying: Don't allow everybody to use a modem.
Applying: The address limit is already set in flush_old_exec() so this
Applying: A call to va_copy() should always be followed by a call to va_end() in the
Applying: Don't dereference em if it's NULL or an error pointer.
Applying: Some messing with error codes to return 0 on out id's and match
Applying: fb_set_suspend() must be called with the console semaphore held, which
Applying: hwmon was using an idr with a NULL pointer, so convert to an
Applying: A straightforward looking use of idr for a device id.
Applying: The address limit is already set in flush_old_exec() so this
Applying: The address limit is already set in flush_old_exec() so this
Applying: Add new check (assert_init) to make sure objects are initialized and
Applying: del_timer_sync() calls debug_object_assert_init() to assert that a timer
Applying: ext4_{set,clear}_bit() is defined as __test_and_{set,clear}_bit_le() for
Applying: The dqc_bitmap field of struct ocfs2_local_disk_chunk is 32-bit aligned,
Applying: The address limit is already set in flush_old_exec() so those calls to
Applying: When do pci remove/rescan on system that have more iommus, got
Applying: The current implementation of dmi_name_in_vendors() is an invitation to
Applying: For headers that get exported to userland and make use of u32 style
Applying: Fix sparse warnings of right shift bigger than source value size:
Applying: We leak in drivers/scsi/aacraid/commctrl.c::aac_send_raw_srb() :
Applying: Some mangling of errors was necessary to maintain current interface.
Applying: This does involve additional use of the spin lock in idr.c.  Is this an
Applying: Instead of open coding this function use kstrtoul_from_user() directly.
Applying: brd_make_request() always returns 0, which doesn't make much sense.
Applying: The address limit is already set in flush_old_exec() so this assignment of
Applying: The basic idea behind cross memory attach is to allow MPI programs doing
Applying: - Add x86_64 specific wire up
Applying: acct_isolated of compaction uses page_lru_base_type which returns only
Applying: Change ISOLATE_XXX macro with bitwise isolate_mode_t type.  Normally,
Applying: In async mode, compaction doesn't migrate dirty or writeback pages.  So,
Applying: In __zone_reclaim case, we don't want to shrink mapped page.  Nonetheless,
Applying: unmap_and_move() is one a big messy function.  Clean it up.
Applying: radix_tree_tag_get()'s BUG (when it sees a tag after saw_unset_tag) was
Applying: per-task block plug can reduce block queue lock contention and increase
Applying: The tracing ring-buffer used this function briefly, but not anymore.
Applying: After selecting a task to kill, the oom killer iterates all processes and
Applying: Remove PageSwapBacked (!page_is_file_cache) cases from
Applying: Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Applying: The current implementation of the /dev/hpet driver couples opening the
Applying: smp_call_function() only lets all other CPUs execute a specific function,
Applying: auto_demotion_disable is called only for online CPUs.  For hotplugged
Applying: Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning:
Applying: Strict user copy checks are only really supported on x86_32 even though
Applying: The help text for this config is duplicated across the x86, parisc, and
Applying: s/lib-/obj-/ for usercopy.o
Applying: After an "unexpected" reboot, I found this Oops in my logs:
Applying: In the move of the lis3 driver, the hp_accel.c file got dropped from the
Applying: Add axis correction for HP EliteBook 2730p.
Applying: Add axis correction for HP EliteBook 8540w.
Applying: Add axis correction for HP ProBook 6555b.
Applying: Adapt the help text for CONFIG_HP_ACCEL to the move of
Applying: Signed-off-by: Ilkka Koskinen <ilkka.koskinen@nokia.com>
Applying: Signed-off-by: Ilkka Koskinen <ilkka.koskinen@nokia.com>
Applying: Change exported functions to use the device given as parameter
Applying: Signed-off-by: Ilkka Koskinen <ilkka.koskinen@nokia.com>
Applying: Add V2 of the LED driver for a single timer channel for the TPU hardware
Applying: Add support for slice by 8 to existing crc32 algorithm.  Also modify
Applying: don't include asm/msr.h
Applying: This is the one use of an ida that doesn't retry on receiving -EAGAIN.
Applying: One can get this information from minix/inode.c, but adding the
Applying: Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Applying: Force this on for -next/mm testing purposes.
Applying: Add a proc_dointvec_bool() sysctl handler for cases where the input value
Applying: Use the new proc_do_intvec_bool() handler for various boolean inputs.
Applying: Add a proc_dointvec_unsigned() sysctl handler for positive value cases.
Applying: Cc: Alexey Dobriyan <adobriyan@gmail.com>
Applying: Use the new proc_do_intvec_unsigned() handler for various unsigned inputs.
Applying: A default echo function has been provided so it is no longer an error when
Applying: This client driver allows you to use a GPIO pin as a source for PPS
Applying: remove unneeded cast of void*
Applying: Straightforward.  As an aside, the ida_init calls are not needed as far as
Merging akpm
Applying: do_mounts: remove __init_data from root_wait
[master 1e4cc06] Revert "PM QoS: Add global notification mechanism for device constraints"
[master a0184cf] Revert "PM QoS: Implement per-device PM QoS constraints"

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* Re: linux-next blackfin builds
From: Stephen Rothwell @ 2011-08-19  4:10 UTC (permalink / raw)
  To: Mike Frysinger; +Cc: linux-next, uclinux-dist-devel
In-Reply-To: <CAMjpGUe=xYNuFm9pKp6vSLavE4Vpki25qkrC406cH7MAXBzRrQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1788 bytes --]

Hi Mike,

On Thu, 18 Aug 2011 23:16:23 -0400 Mike Frysinger <vapier.adi@gmail.com> wrote:
>
> On Wed, Aug 17, 2011 at 02:22, Stephen Rothwell wrote:
> > I have found a compiler (gcc 4.4.0, no libc) that seem to work.
> 
> where did you find it so that i can poke it directly ?

Someone here at IBM built it for me from the unaltered gcc/binutils sources.

> > see the results here: http://kisskb.ellerman.id.au/kisskb/branch/9/ .
> > Of course, some of the build errors may be due to the tool chain, I guess.
> 
> awesome.  let's see ...
> 
> this error is due to your u-boot mkimage being too old.  this has been
> fixed for quite a while now (at least since the 2010.03 release):
> /usr/local/bin/mkimage: For XIP, the entry point must be the load addr + 64
> 
> this errors out for the same reason ... your local mkimage needs to be upgraded.
>   UIMAGE  arch/blackfin/boot/vmImage.lzma
> Invalid Compression Type - valid names are: none, bzip2, gzip

OK, upgraded mkimage to 2011.03 (the version in Debian testing).

> this is a known bug in the common musb code.  not much we can do atm.
> ERROR: "dma_controller_destroy" [drivers/usb/musb/musb_hdrc.ko] undefined!
> ERROR: "dma_controller_create" [drivers/usb/musb/musb_hdrc.ko] undefined!

OK.

> this is interesting ... probably a bug in the Blackfin linker you're
> using.  what version is it ?
> /tmp/cccKdWmY.s:908: Error: pcrel too far BFD_RELOC_BFIN_10

GNU ld (GNU Binutils) 2.19.1

> probably need an updated gcc, although it might not be in a release yet.
> cc1: error: -mcpu=bf518-0.1 has invalid silicon revision

OK.  We may try building gcc 4.5.x and binutils 2.21.x

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* Re: linux-next blackfin builds
From: Mike Frysinger @ 2011-08-19  3:16 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: linux-next, uclinux-dist-devel
In-Reply-To: <20110817162248.6e2af136fe580e5ab4994b0b@canb.auug.org.au>

On Wed, Aug 17, 2011 at 02:22, Stephen Rothwell wrote:
> I have found a compiler (gcc 4.4.0, no libc) that seem to work.

where did you find it so that i can poke it directly ?

> see the results here: http://kisskb.ellerman.id.au/kisskb/branch/9/ .
> Of course, some of the build errors may be due to the tool chain, I guess.

awesome.  let's see ...

this error is due to your u-boot mkimage being too old.  this has been
fixed for quite a while now (at least since the 2010.03 release):
/usr/local/bin/mkimage: For XIP, the entry point must be the load addr + 64

this errors out for the same reason ... your local mkimage needs to be upgraded.
  UIMAGE  arch/blackfin/boot/vmImage.lzma
Invalid Compression Type - valid names are: none, bzip2, gzip

this is a known bug in the common musb code.  not much we can do atm.
ERROR: "dma_controller_destroy" [drivers/usb/musb/musb_hdrc.ko] undefined!
ERROR: "dma_controller_create" [drivers/usb/musb/musb_hdrc.ko] undefined!

this is interesting ... probably a bug in the Blackfin linker you're
using.  what version is it ?
/tmp/cccKdWmY.s:908: Error: pcrel too far BFD_RELOC_BFIN_10

probably need an updated gcc, although it might not be in a release yet.
cc1: error: -mcpu=bf518-0.1 has invalid silicon revision
-mike

^ permalink raw reply

* linux-next: build failure after merge of the final tree (pm tree related)
From: Stephen Rothwell @ 2011-08-19  3:03 UTC (permalink / raw)
  To: Rafael J. Wysocki; +Cc: linux-next, linux-kernel, Jean Pihet

[-- Attachment #1: Type: text/plain, Size: 1423 bytes --]

Hi all,

After merging the final tree, today's linux-next build (powerpc
allnoconfig) failed like this:

In file included from include/linux/netdevice.h:34:0,
                 from include/linux/icmpv6.h:173,
                 from include/linux/ipv6.h:220,
                 from include/net/ipv6.h:16,
                 from include/linux/sunrpc/clnt.h:25,
                 from include/linux/nfs_fs.h:50,
                 from init/do_mounts.c:20:
include/linux/pm_qos.h: In function 'dev_pm_qos_add_request':
include/linux/pm_qos.h:123:6: warning: 'return' with no value, in function returning non-void
include/linux/pm_qos.h: In function 'dev_pm_qos_update_request':
include/linux/pm_qos.h:126:6: warning: 'return' with no value, in function returning non-void
include/linux/pm_qos.h: In function 'dev_pm_qos_remove_request':
include/linux/pm_qos.h:128:6: warning: 'return' with no value, in function returning non-void

Caused by commit b6d5b88750dc ("PM QoS: Implement per-device PM QoS
constraints").

Please, please compile test with CONFIG options that your patch depends
on switched on and switched off - in this case CONFIG_PM.

I have reverted that commit (and the followinf commit 57afcf09649c ("PM
QoS: Add global notification mechanism for device constraints")) for
today.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* linux-next: manual merge of the wireless tree with the net tree
From: Stephen Rothwell @ 2011-08-19  0:59 UTC (permalink / raw)
  To: John W. Linville
  Cc: linux-next, linux-kernel, Jiri Pirko, David Miller, netdev

[-- Attachment #1: Type: text/plain, Size: 441 bytes --]

Hi John,

Today's linux-next merge of the wireless tree got a conflict in
drivers/staging/ath6kl/os/linux/ar6000_drv.c between commit afc4b13df143
("net: remove use of ndo_set_multicast_list in drivers") from the net
tree and commit af2bf4b4ee58 ("staging: remove ath6kl") from the wireless
tree.

I just removed the file.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* Re: linux-next: build warning after merge of the moduleh tree
From: Rafael J. Wysocki @ 2011-08-18 20:57 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: Paul Gortmaker, linux-next, linux-kernel
In-Reply-To: <20110818192754.972382bbed8fa3adc6dca9c5@canb.auug.org.au>

On Thursday, August 18, 2011, Stephen Rothwell wrote:
> Hi Rafael,
> 
> On Thu, 18 Aug 2011 10:26:51 +0200 "Rafael J. Wysocki" <rjw@sisk.pl> wrote:
> >
> > Do you mean that drivers/base/power/common.c should include module.h
> > or something else?
> 
> Yes, that is exactly what I mean :-)  See Rule 1 in
> Documentation/SubmitChecklist.  The reason it is different, is because
> the module.h splitup is cerating export.h for files that just need
> EXPORT_SYMBOL (like this file).

OK, I've modified common.c so that module.h is included.

Thanks,
Rafael

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox