2011-02-11 01:00:59

by Andrew Morton

[permalink] [raw]
Subject: mmotm 2011-02-10-16-26 uploaded

The mm-of-the-moment snapshot 2011-02-10-16-26 has been uploaded to

http://userweb.kernel.org/~akpm/mmotm/

and will soon be available at

git://zen-kernel.org/kernel/mmotm.git

It contains the following patches against 2.6.38-rc4:

origin.patch
fs-nameic-fix-filp_cachep-memory-corruption.patch
vfs-call-rcu_barrier-after-kill_sb.patch
ptrace-use-safer-wake-up-on-ptrace_detach.patch
drivers-gpio-pca953xc-add-a-mutex-to-fix-race-condition.patch
drivers-rtc-add-module_put-on-error-path-in-rtc_proc_open.patch
nbd-remove-module-level-ioctl-mutex.patch
memblock-dont-adjust-size-in-memblock_find_base.patch
mlock-fix-race-when-munlocking-pages-in-do_wp_page.patch
mlock-do-not-munlock-pages-in-__do_fault.patch
vmscan-fix-zone-shrinking-exit-when-scan-work-is-done.patch
memcg-fix-leak-of-accounting-at-failure-path-of-hugepage-collapsing.patch
drivers-w1-masters-omap_hdqc-add-missing-clk_put.patch
init-calibratec-fix-jiffy-calculations-in-calibrate_delay_direct-to-handle-overflow.patch
linux-next.patch
linux-next-rejects.patch
next-remove-localversion.patch
i-need-old-gcc.patch
arch-alpha-kernel-systblss-remove-debug-check.patch
include-asm-generic-vmlinuxldsh-fix-__modver-section-warnings.patch
backlight-new-driver-for-the-adp8870-backlight-devices.patch
drivers-misc-apds9802alsc-put-the-device-into-runtime-suspend-after-resume-probe-is-handled.patch
mm-vmap-area-cache.patch
loop-queue_lock-null-pointer-derefence-in-blk_throtl_exit-v3.patch
drivers-media-video-tlg2300-pd-videoc-fix-double-mutex_unlock-in-pd_vidioc_s_fmt.patch
drivers-pcmcia-pxa2xxc-pcmcia-vs-mecr-on-pxa25x-sa1111.patch
acpi-remove-the-wakeuprun_wake_count-device-field.patch
acerhdf-add-support-for-aspire-1410-bios-v13314.patch
x86-numa-add-error-handling-for-bad-cpu-to-node-mappings.patch
arch-x86-kernel-microcode_corec-do-not-warn_oncpu-=-0-during-resume.patch
arch-x86-include-asm-delayh-fix-udelay-and-ndelay-for-8-bit-args.patch
drivers-platform-x86-intel_pmic_gpioc-fix-big-mess-with-i386-allmodconfig.patch
drivers-platform-x86-makefile-drivers-platform-x86-intel_mid_thermalc-doesnt-exist.patch
msm-timer-migrate-to-timer-based-__delay.patch
audit-always-follow-va_copy-with-va_end.patch
fs-btrfs-inodec-eliminate-memory-leak.patch
btrfs-dont-dereference-extent_mapping-if-null.patch
cpufreq-fix-ondemand-governor-powersave_bias-execution-time-misuse.patch
drivers-dma-ipu-ipu_irqc-irq_data-conversion.patch
drivers-gpu-drm-radeon-atomc-fix-warning.patch
fb-fix-potential-deadlock-between-lock_fb_info-and-console_lock.patch
cyber2000fb-avoid-palette-corruption-at-higher-clocks.patch
leds-convert-bd2802-driver-to-dev_pm_ops.patch
leds-convert-bd2802-driver-to-dev_pm_ops-fix.patch
leds-add-driver-for-lm3530-als.patch
leds-add-driver-for-lm3530-als-update.patch
leds-route-kbd-leds-through-the-generic-leds-layer.patch
drivers-mtd-maps-ts5500_flashc-avoid-calling-map_destroy-on-null.patch
backlight-add-backlight-type.patch
backlight-add-backlight-type-fix.patch
backlight-add-backlight-type-fix-fix.patch
i915-add-native-backlight-control.patch
radeon-expose-backlight-class-device-for-legacy-lvds-encoder.patch
radeon-expose-backlight-class-device-for-legacy-lvds-encoder-update.patch
nouveau-change-the-backlight-parent-device-to-the-connector-not-the-pci-dev.patch
acpi-tie-acpi-backlight-devices-to-pci-devices-if-possible.patch
mbp_nvidia_bl-remove-dmi-dependency.patch
mbp_nvidia_bl-check-that-the-backlight-control-functions.patch
mbp_nvidia_bl-rename-to-apple_bl.patch
backlight-apple_bl-depends-on-acpi.patch
btusb-patch-add_apple_macbookpro62.patch
fs-ocfs2-dlm-dlmdomainc-avoid-a-gfp_atomic-allocation.patch
drivers-message-fusion-mptsasc-fix-warning.patch
scsi-fix-a-header-to-include-linux-typesh.patch
drbd-fix-warning.patch
usb-yurex-recognize-generalkeys-wireless-presenter-as-generic-hid.patch
mm.patch
mm-compaction-check-migrate_pagess-return-value-instead-of-list_empty.patch
mm-numa-aware-alloc_task_struct_node.patch
mm-numa-aware-alloc_thread_info_node.patch
kthread-numa-aware-kthread_create_on_cpu.patch
kthread-use-kthread_create_on_cpu.patch
oom-suppress-nodes-that-are-not-allowed-from-meminfo-on-oom-kill.patch
oom-suppress-show_mem-for-many-nodes-in-irq-context-on-page-alloc-failure.patch
oom-suppress-nodes-that-are-not-allowed-from-meminfo-on-page-alloc-failure.patch
mm-notifier_from_errno-cleanup.patch
mm-remove-unused-token-argument-from-apply_to_page_range-callback.patch
mm-add-apply_to_page_range_batch.patch
ioremap-use-apply_to_page_range_batch-for-ioremap_page_range.patch
vmalloc-use-plain-pte_clear-for-unmaps.patch
vmalloc-use-apply_to_page_range_batch-for-vunmap_page_range.patch
vmalloc-use-apply_to_page_range_batch-for-vmap_page_range_noflush.patch
vmalloc-use-apply_to_page_range_batch-in-alloc_vm_area.patch
xen-mmu-use-apply_to_page_range_batch-in-xen_remap_domain_mfn_range.patch
xen-grant-table-use-apply_to_page_range_batch.patch
mm-allow-gup-to-fail-instead-of-waiting-on-a-page.patch
mm-allow-gup-to-fail-instead-of-waiting-on-a-page-fix.patch
mm-add-replace_page_cache_page-function.patch
mm-add-replace_page_cache_page-function-add-freepage-hook.patch
mm-introduce-delete_from_page_cache.patch
mm-hugetlbfs-change-remove_from_page_cache.patch
mm-shmem-change-remove_from_page_cache.patch
mm-truncate-change-remove_from_page_cache.patch
mm-good-bye-remove_from_page_cache.patch
mm-change-__remove_from_page_cache.patch
mm-fix-out-of-date-comments-which-refers-non-existent-functions.patch
mm-batch-free-pcp-list-if-possible.patch
mm-batch-free-pcp-list-if-possible-fix.patch
memsw-remove-noswapaccount-kernel-parameter.patch
xattrh-expose-string-defines-to-userspace.patch
frv-duplicate-output_buffer-of-e03.patch
frv-duplicate-output_buffer-of-e03-checkpatch-fixes.patch
hpet-factor-timer-allocate-from-open.patch
arch-alpha-include-asm-ioh-s-extern-inline-static-inline.patch
uml-kernels-on-i386x86_64-produce-bad-coredumps.patch
add-the-common-dma_addr_t-typedef-to-include-linux-typesh.patch
fs-use-appropriate-printk-priority-level.patch
include-linux-compiler-gcch-unify-macro-definitions.patch
bh1780gli-convert-to-dev-pm-ops.patch
drivers-misc-bmp085c-free-initmem-memory.patch
move-x86-specific-oops=panic-to-generic-code.patch
include-linux-errh-add-a-function-to-cast-error-pointers-to-a-return-value.patch
smp-move-smp-setup-functions-to-kernel-smpc.patch
kernel-cpuc-fix-many-errors-related-to-style.patch
kernel-cpuc-fix-many-errors-related-to-style-fix.patch
llist-add-kconfig-option-arch_have_nmi_safe_cmpxchg.patch
llist-lib-add-lock-less-null-terminated-single-list.patch
llist-irq_work-use-llist-in-irq_work.patch
llist-net-rds-replace-xlist-in-net-rds-xlisth-with-llist.patch
net-convert-%p-usage-to-%pk.patch
vsprintf-neaten-%pk-kptr_restrict-save-a-bit-of-code-space.patch
console-allow-to-retain-boot-console-via-boot-option-keep_bootcon.patch
console-prevent-registered-consoles-from-dumping-old-kernel-message-over-again.patch
printk-use-%pk-for-proc-kallsyms-and-proc-modules.patch
printk-allow-setting-default_message_level-via-kconfig.patch
vfs-ignore-error-on-forced-remount.patch
vfs-keep-list-of-mounts-for-each-superblock.patch
vfs-protect-remounting-superblock-read-only.patch
vfs-fs_may_remount_ro-turn-unnecessary-check-into-a-warn_on.patch
fs-ioctlc-remove-unnecessary-variable.patch
get_maintainerpl-allow-k-pattern-tests-to-match-non-patch-text.patch
sigma-firmware-loader-for-analog-devices-sigmastudio.patch
sigma-firmware-loader-for-analog-devices-sigmastudio-v2.patch
drivers-mmc-host-omapc-use-resource_size.patch
drivers-mmc-host-omap_hsmmcc-use-resource_size.patch
scripts-checkpatchpl-reset-rpt_cleaners-warnings.patch
select-remove-unused-max_select_seconds.patch
epoll-move-ready-event-check-into-proper-inline.patch
epoll-fix-compiler-warning-and-optimize-the-non-blocking-path.patch
epoll-fix-compiler-warning-and-optimize-the-non-blocking-path-fix.patch
binfmt_elf-quiet-gcc-46-set-but-not-used-warning-in-load_elf_binary.patch
lib-hexdumpc-make-hex2bin-return-the-updated-src-address.patch
fs-binfmt_miscc-use-kernels-hex_to_bin-method.patch
fs-binfmt_miscc-use-kernels-hex_to_bin-method-fix.patch
fs-binfmt_miscc-use-kernels-hex_to_bin-method-fix-fix.patch
init-return-proper-error-code-in-do_mounts_rd.patch
rtc-add-support-for-the-rtc-in-via-vt8500-and-compatibles.patch
rtc-add-real-time-clock-driver-for-nvidia-tegra.patch
gpio-add-new-altera-pio-driver.patch
gpio-add-new-altera-pio-driver-update.patch
gpio-make-gpio_requestfree_array-gpio-array-parameter-const.patch
pnp-only-assign-ioresource_dma-if-config_isa_dma_api-is-enabled.patch
x86-only-compile-8237a-if-config_isa_dma_api-is-enabled.patch
x86-only-compile-floppy-driver-if-config_isa_dma_api-is-enabled.patch
x86-allow-config_isa_dma_api-to-be-disabled.patch
jbd-remove-dependency-on-__gfp_nofail.patch
cgroup-remove-the-ns_cgroup.patch
memcg-res_counter_read_u64-fix-potential-races-on-32-bit-machines.patch
memcg-fix-ugly-initialization-of-return-value-is-in-caller.patch
memcg-soft-limit-reclaim-should-end-at-limit-not-below.patch
memcg-simplify-the-way-memory-limits-are-checked.patch
memcg-remove-unused-page-flag-bitfield-defines.patch
memcg-remove-impossible-conditional-when-committing.patch
memcg-remove-null-check-from-lookup_page_cgroup-result.patch
memcg-add-memcg-sanity-checks-at-allocating-and-freeing-pages.patch
memcg-add-memcg-sanity-checks-at-allocating-and-freeing-pages-update.patch
memcg-no-uncharged-pages-reach-page_cgroup_zoneinfo.patch
memcg-change-page_cgroup_zoneinfo-signature.patch
memcg-fold-__mem_cgroup_move_account-into-caller.patch
memcg-condense-page_cgroup-to-page-lookup-points.patch
memcg-remove-direct-page_cgroup-to-page-pointer.patch
memcg-remove-direct-page_cgroup-to-page-pointer-fix.patch
memcg-remove-direct-page_cgroup-to-page-pointer-fix-fix.patch
memcg-charged-pages-always-have-valid-per-memcg-zone-info.patch
memcg-remove-memcg-reclaim_param_lock.patch
memcg-keep-only-one-charge-cancelling-function.patch
memcg-keep-only-one-charge-cancelling-function-fix.patch
memcg-convert-per-cpu-stock-from-bytes-to-page-granularity.patch
memcg-convert-uncharge-batching-from-bytes-to-page-granularity.patch
memcg-unify-charge-uncharge-quantities-to-units-of-pages.patch
drivers-char-add-msm-smd_pkt-driver.patch
drivers-char-bfin_jtag_commc-avoid-calling-put_tty_driver-on-null.patch
drivers-char-specialixc-convert-func_enter-to-func_exit.patch
rapidio-add-new-sysfs-attributes.patch
rapidio-add-rapidio-documentation.patch
sysctl_check-drop-table-procname-checks.patch
sysctl_check-drop-dead-code.patch
fs-execc-provide-the-correct-process-pid-to-the-pipe-helper.patch
taskstats-use-appropriate-printk-priority-level.patch
kernel-gcov-makefile-use-proper-ccflag-flag-in-makefile.patch
remove-dma64_addr_t.patch
adfs-fix-e-f-dir-size-2048-crashing-kernel.patch
adfs-improve-timestamp-precision.patch
adfs-add-hexadecimal-filetype-suffix-option.patch
adfs-remove-the-big-kernel-lock.patch
scatterlist-new-helper-functions.patch
memstick-add-driver-for-ricoh-r5c592-card-reader.patch
memstick-add-support-for-legacy-memorysticks.patch
memstick-add-support-for-legacy-memorysticks-update.patch
memstick-add-alex-dubov-to-maintainers-of-the-memstick-core.patch
crash_dump-export-is_kdump_kernel-to-modules-consolidate-elfcorehdr_addr-setup_elfcorehdr-and-saved_max_pfn.patch
crash_dump-export-is_kdump_kernel-to-modules-consolidate-elfcorehdr_addr-setup_elfcorehdr-and-saved_max_pfn-fix.patch
crash_dump-export-is_kdump_kernel-to-modules-consolidate-elfcorehdr_addr-setup_elfcorehdr-and-saved_max_pfn-fix-fix.patch
kexec-remove-kmsg_dump_kexec.patch
fs-devpts-inodec-correctly-check-d_alloc_name-return-code-in-devpts_pty_new.patch
fs-devpts_pty_new-return-enomem-if-dentry-allocation-failed.patch
kvm-stop-including-asm-generic-bitops-leh-directly.patch
rds-stop-including-asm-generic-bitops-leh-directly.patch
bitops-merge-little-and-big-endian-definisions-in-asm-generic-bitops-leh.patch
asm-generic-rename-generic-little-endian-bitops-functions.patch
asm-generic-change-little-endian-bitops-to-take-any-pointer-types.patch
asm-generic-change-little-endian-bitops-to-take-any-pointer-types-convert-little-endian-bitops-macros-to-static-inline-functions.patch
powerpc-introduce-little-endian-bitops.patch
powerpc-introduce-little-endian-bitops-convert-little-endian-bitops-macros-to-static-inline-functions.patch
s390-introduce-little-endian-bitops.patch
s390-introduce-little-endian-bitops-convert-little-endian-bitops-macros-to-static-inline-functions.patch
arm-introduce-little-endian-bitops.patch
arm-introduce-little-endian-bitops-convert-little-endian-bitops-macros-to-static-inline-functions.patch
m68k-introduce-little-endian-bitops.patch
m68k-introduce-little-endian-bitops-convert-little-endian-bitops-macros-to-static-inline-functions.patch
bitops-introduce-config_generic_find_bit_le.patch
m68knommu-introduce-little-endian-bitops.patch
m68knommu-introduce-little-endian-bitops-convert-little-endian-bitops-macros-to-static-inline-functions.patch
bitops-introduce-little-endian-bitops-for-most-architectures.patch
asm-generic-use-little-endian-bitops.patch
kvm-use-little-endian-bitops.patch
rds-use-little-endian-bitops.patch
ext3-use-little-endian-bitops.patch
ext4-use-little-endian-bitops.patch
ocfs2-use-little-endian-bitops.patch
nilfs2-use-little-endian-bitops.patch
reiserfs-use-little-endian-bitops.patch
udf-use-little-endian-bitops.patch
ufs-use-little-endian-bitops.patch
md-use-little-endian-bitops.patch
dm-use-little-endian-bitops.patch
bitops-remove-ext2-non-atomic-bitops-from-asm-bitopsh.patch
m68k-remove-inline-asm-from-minix_find_first_zero_bit.patch
bitops-remove-minix-bitops-from-asm-bitopsh.patch
make-sure-nobodys-leaking-resources.patch
journal_add_journal_head-debug.patch
releasing-resources-with-children.patch
make-frame_pointer-default=y.patch
mutex-subsystem-synchro-test-module.patch
mutex-subsystem-synchro-test-module-add-missing-header-file.patch
slab-leaks3-default-y.patch
put_bh-debug.patch
add-debugging-aid-for-memory-initialisation-problems.patch
workaround-for-a-pci-restoring-bug.patch
prio_tree-debugging-patch.patch
single_open-seq_release-leak-diagnostics.patch
add-a-refcount-check-in-dput.patch
memblock-add-input-size-checking-to-memblock_find_region.patch
memblock-add-input-size-checking-to-memblock_find_region-fix.patch


2011-02-11 21:52:47

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: mmotm 2011-02-10-16-26 uploaded

On Thu, 10 Feb 2011 16:26:36 PST, [email protected] said:
> The mm-of-the-moment snapshot 2011-02-10-16-26 has been uploaded to
>
> http://userweb.kernel.org/~akpm/mmotm/

CONFIG_ZCACHE=m dies a horrid death:

MODPOST 257 modules
ERROR: "xv_malloc" [drivers/staging/zcache/zcache.ko] undefined!
ERROR: "tmem_new_pool" [drivers/staging/zcache/zcache.ko] undefined!
ERROR: "tmem_put" [drivers/staging/zcache/zcache.ko] undefined!
ERROR: "tmem_destroy_pool" [drivers/staging/zcache/zcache.ko] undefined!
ERROR: "xv_free" [drivers/staging/zcache/zcache.ko] undefined!
ERROR: "xv_get_object_size" [drivers/staging/zcache/zcache.ko] undefined!
ERROR: "tmem_get" [drivers/staging/zcache/zcache.ko] undefined!
ERROR: "tmem_flush_object" [drivers/staging/zcache/zcache.ko] undefined!
ERROR: "tmem_flush_page" [drivers/staging/zcache/zcache.ko] undefined!
make[1]: *** [__modpost] Error 1

Looks like none of those have EXPORT_SYMBOL on them.


Attachments:
(No filename) (227.00 B)

2011-02-11 22:10:24

by Dan Magenheimer

[permalink] [raw]
Subject: RE: mmotm 2011-02-10-16-26 uploaded

> From: [email protected] [mailto:[email protected]]
> Sent: Friday, February 11, 2011 2:53 PM
> To: [email protected]; Dan Magenheimer
> Cc: [email protected]; [email protected]; linux-
> [email protected]; [email protected]
> Subject: Re: mmotm 2011-02-10-16-26 uploaded
>
> On Thu, 10 Feb 2011 16:26:36 PST, [email protected] said:
> > The mm-of-the-moment snapshot 2011-02-10-16-26 has been uploaded to
> >
> > http://userweb.kernel.org/~akpm/mmotm/
>
> CONFIG_ZCACHE=m dies a horrid death:

Thanks Valdis. A fix for this has already been posted by
Nitin Gupta and Randy Dunlap here:

https://lkml.org/lkml/2011/2/10/383

Another patch for a zcache memory leak has been posted here:

https://lkml.org/lkml/2011/2/10/306

I'm sorry that multiple people have run into this in
multiple trees.
I have to admit I am a bit baffled as to what the proper
tree flow is for bug fixes like this, but would be happy
to "follow the process" if I am told what it is or if
someone can point me to a document describing it.

(Clearly making sure there are no bugs at all in a
submission is the best way to go, but I'm afraid
I can't claim to be perfect :-)

Thanks,
Dan

P.S. I suppose there isn't really a good reason for
CONFIG_ZCACHE to be tri-state as it really makes
no sense as a module because, if CONFIG_CLEANCACHE
is enabled, it will always get loaded.

2011-02-12 02:49:13

by Randy Dunlap

[permalink] [raw]
Subject: Re: mmotm 2011-02-10-16-26 uploaded (zcache')

On 2/11/2011 2:09 PM, Dan Magenheimer wrote:
>> From: [email protected] [mailto:[email protected]]
>> Sent: Friday, February 11, 2011 2:53 PM
>> To: [email protected]; Dan Magenheimer
>> Cc: [email protected]; [email protected]; linux-
>> [email protected]; [email protected]
>> Subject: Re: mmotm 2011-02-10-16-26 uploaded
>>
>> On Thu, 10 Feb 2011 16:26:36 PST, [email protected] said:
>>> The mm-of-the-moment snapshot 2011-02-10-16-26 has been uploaded to
>>>
>>> http://userweb.kernel.org/~akpm/mmotm/
>>
>> CONFIG_ZCACHE=m dies a horrid death:
>
> Thanks Valdis. A fix for this has already been posted by
> Nitin Gupta and Randy Dunlap here:
>
> https://lkml.org/lkml/2011/2/10/383
>
> Another patch for a zcache memory leak has been posted here:
>
> https://lkml.org/lkml/2011/2/10/306
>
> I'm sorry that multiple people have run into this in
> multiple trees.
> I have to admit I am a bit baffled as to what the proper
> tree flow is for bug fixes like this, but would be happy
> to "follow the process" if I am told what it is or if
> someone can point me to a document describing it.
>
> (Clearly making sure there are no bugs at all in a
> submission is the best way to go, but I'm afraid
> I can't claim to be perfect :-)

When CONFIG_SYSFS is not enabled:

mmotm-2011-0210-1626/drivers/staging/zcache/zcache.c:1608: error: 'ret'
undeclared (first use in this function)

2011-02-12 06:35:30

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH -next/mmotm] net/can: fix softing build errors

From: Randy Dunlap <[email protected]>

Fix can/softing build errors due to kconfig error.

kconfig tells us about a problem...

warning: (CAN_SOFTING_CS) selects CAN_SOFTING which has unmet direct dependencies (NET && CAN && CAN_DEV && HAS_IOMEM)

and then this is what happens due to that kconfig problem:

ERROR: "register_candev" [drivers/net/can/softing/softing.ko] undefined!
ERROR: "alloc_candev" [drivers/net/can/softing/softing.ko] undefined!
ERROR: "can_bus_off" [drivers/net/can/softing/softing.ko] undefined!
ERROR: "close_candev" [drivers/net/can/softing/softing.ko] undefined!
ERROR: "free_candev" [drivers/net/can/softing/softing.ko] undefined!
ERROR: "unregister_candev" [drivers/net/can/softing/softing.ko] undefined!
ERROR: "alloc_can_skb" [drivers/net/can/softing/softing.ko] undefined!
ERROR: "open_candev" [drivers/net/can/softing/softing.ko] undefined!

with this partial config:

CONFIG_CAN=m
# CONFIG_CAN_RAW is not set
# CONFIG_CAN_BCM is not set
# CAN Device Drivers
# CONFIG_CAN_VCAN is not set
CONFIG_CAN_SLCAN=m
# CONFIG_CAN_DEV is not set
CONFIG_CAN_SOFTING=m
CONFIG_CAN_SOFTING_CS=m
# CONFIG_CAN_DEBUG_DEVICES is not set

Signed-off-by: Randy Dunlap <[email protected]>
Cc: Kurt Van Dijck <[email protected]>
---
drivers/net/can/softing/Kconfig | 1 +
1 file changed, 1 insertion(+)

--- mmotm-2011-0210-1626.orig/drivers/net/can/softing/Kconfig
+++ mmotm-2011-0210-1626/drivers/net/can/softing/Kconfig
@@ -18,6 +18,7 @@ config CAN_SOFTING
config CAN_SOFTING_CS
tristate "Softing Gmbh CAN pcmcia cards"
depends on PCMCIA
+ depends on CAN_DEV && HAS_IOMEM
select CAN_SOFTING
---help---
Support for PCMCIA cards from Softing Gmbh & some cards

2011-02-12 11:15:29

by Kurt Van Dijck

[permalink] [raw]
Subject: Re: [PATCH -next/mmotm] net/can: fix softing build errors

On Fri, Feb 11, 2011 at 10:33:12PM -0800, Randy Dunlap wrote:
>
> warning: (CAN_SOFTING_CS) selects CAN_SOFTING which has unmet direct dependencies (NET && CAN && CAN_DEV && HAS_IOMEM)
>
> with this partial config:
>
> CONFIG_CAN=m
> # CONFIG_CAN_RAW is not set
> # CONFIG_CAN_BCM is not set
> # CAN Device Drivers
> # CONFIG_CAN_VCAN is not set
> CONFIG_CAN_SLCAN=m
> # CONFIG_CAN_DEV is not set
> CONFIG_CAN_SOFTING=m
> CONFIG_CAN_SOFTING_CS=m
> # CONFIG_CAN_DEBUG_DEVICES is not set
I understand the output, but I don't understand the cause well enough.
CAN_SOFTING=m has a 'depends on CAN_DEV'
Is it then possible to have CAN_SOFTING=m _and not_ CAN_DEV ?
>

regards,
Kurt

2011-02-12 16:04:08

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH -next/mmotm] net/can: fix softing build errors

On 02/12/11 03:15, Kurt Van Dijck wrote:
> On Fri, Feb 11, 2011 at 10:33:12PM -0800, Randy Dunlap wrote:
>>
>> warning: (CAN_SOFTING_CS) selects CAN_SOFTING which has unmet direct dependencies (NET && CAN && CAN_DEV && HAS_IOMEM)
>>
>> with this partial config:
>>
>> CONFIG_CAN=m
>> # CONFIG_CAN_RAW is not set
>> # CONFIG_CAN_BCM is not set
>> # CAN Device Drivers
>> # CONFIG_CAN_VCAN is not set
>> CONFIG_CAN_SLCAN=m
>> # CONFIG_CAN_DEV is not set
>> CONFIG_CAN_SOFTING=m
>> CONFIG_CAN_SOFTING_CS=m
>> # CONFIG_CAN_DEBUG_DEVICES is not set
> I understand the output, but I don't understand the cause well enough.
> CAN_SOFTING=m has a 'depends on CAN_DEV'
> Is it then possible to have CAN_SOFTING=m _and not_ CAN_DEV ?

Yes. From Documentation/kbuild/kconfig-language.txt:

Note:
select should be used with care. select will force
a symbol to a value without visiting the dependencies.
By abusing select you are able to select a symbol FOO even
if FOO depends on BAR that is not set.
In general use select only for non-visible symbols
(no prompts anywhere) and for symbols with no dependencies.
That will limit the usefulness but on the other hand avoid
the illegal configurations all over.


CAN_SOFTING_CS does not depend on CAN_DEV. but it selects CAN_SOFTING,
which does depend on CAN_DEV, ... but CAN_DEV is not enabled.


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

2011-02-13 13:37:29

by Kurt Van Dijck

[permalink] [raw]
Subject: Re: [PATCH -next/mmotm] net/can: fix softing build errors

On Sat, Feb 12, 2011 at 08:02:42AM -0800, Randy Dunlap wrote:
> On 02/12/11 03:15, Kurt Van Dijck wrote:
> > On Fri, Feb 11, 2011 at 10:33:12PM -0800, Randy Dunlap wrote:
> >>
> >> warning: (CAN_SOFTING_CS) selects CAN_SOFTING which has unmet direct dependencies (NET && CAN && CAN_DEV && HAS_IOMEM)
> >>
> >> with this partial config:
> >>
> >> CONFIG_CAN=m
> >> # CONFIG_CAN_RAW is not set
> >> # CONFIG_CAN_BCM is not set
> >> # CAN Device Drivers
> >> # CONFIG_CAN_VCAN is not set
> >> CONFIG_CAN_SLCAN=m
> >> # CONFIG_CAN_DEV is not set
> >> CONFIG_CAN_SOFTING=m
> >> CONFIG_CAN_SOFTING_CS=m
> >> # CONFIG_CAN_DEBUG_DEVICES is not set
> > I understand the output, but I don't understand the cause well enough.
> > CAN_SOFTING=m has a 'depends on CAN_DEV'
> > Is it then possible to have CAN_SOFTING=m _and not_ CAN_DEV ?
>
> Yes. From Documentation/kbuild/kconfig-language.txt:
>
I see.
The 'select CAN_SOFTING' was introduced because it makes no sense to
have CAN_SOFTING_CS alone 'for a normal user', although there is no
real dependency.
Is a 'select' then still a good option, since it feels like repeating
all dependencies from CAN_SOFTING in CAN_SOFTING_CS?
What about this?

diff --git a/drivers/net/can/softing/Kconfig b/drivers/net/can/softing/Kconfig
index 92bd6bd..55dd3e4 100644
--- a/drivers/net/can/softing/Kconfig
+++ b/drivers/net/can/softing/Kconfig
@@ -18,7 +18,7 @@ config CAN_SOFTING
config CAN_SOFTING_CS
tristate "Softing Gmbh CAN pcmcia cards"
depends on PCMCIA
- select CAN_SOFTING
+ depends on CAN_SOFTING
---help---
Support for PCMCIA cards from Softing Gmbh & some cards
from Vector Gmbh.
---
It will present the Softing stuff in Kconfig as if CAN_SOFTING_CS really
depends on CAN_SOFTING, which is acceptible from a users perspective.

Kurt

2011-02-13 16:02:30

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH -next/mmotm] net/can: fix softing build errors

On 02/13/11 05:37, Kurt Van Dijck wrote:
> On Sat, Feb 12, 2011 at 08:02:42AM -0800, Randy Dunlap wrote:
>> On 02/12/11 03:15, Kurt Van Dijck wrote:
>>> On Fri, Feb 11, 2011 at 10:33:12PM -0800, Randy Dunlap wrote:
>>>>
>>>> warning: (CAN_SOFTING_CS) selects CAN_SOFTING which has unmet direct dependencies (NET && CAN && CAN_DEV && HAS_IOMEM)
>>>>
>>>> with this partial config:
>>>>
>>>> CONFIG_CAN=m
>>>> # CONFIG_CAN_RAW is not set
>>>> # CONFIG_CAN_BCM is not set
>>>> # CAN Device Drivers
>>>> # CONFIG_CAN_VCAN is not set
>>>> CONFIG_CAN_SLCAN=m
>>>> # CONFIG_CAN_DEV is not set
>>>> CONFIG_CAN_SOFTING=m
>>>> CONFIG_CAN_SOFTING_CS=m
>>>> # CONFIG_CAN_DEBUG_DEVICES is not set
>>> I understand the output, but I don't understand the cause well enough.
>>> CAN_SOFTING=m has a 'depends on CAN_DEV'
>>> Is it then possible to have CAN_SOFTING=m _and not_ CAN_DEV ?
>>
>> Yes. From Documentation/kbuild/kconfig-language.txt:
>>
> I see.
> The 'select CAN_SOFTING' was introduced because it makes no sense to
> have CAN_SOFTING_CS alone 'for a normal user', although there is no
> real dependency.
> Is a 'select' then still a good option, since it feels like repeating
> all dependencies from CAN_SOFTING in CAN_SOFTING_CS?
> What about this?
>
> diff --git a/drivers/net/can/softing/Kconfig b/drivers/net/can/softing/Kconfig
> index 92bd6bd..55dd3e4 100644
> --- a/drivers/net/can/softing/Kconfig
> +++ b/drivers/net/can/softing/Kconfig
> @@ -18,7 +18,7 @@ config CAN_SOFTING
> config CAN_SOFTING_CS
> tristate "Softing Gmbh CAN pcmcia cards"
> depends on PCMCIA
> - select CAN_SOFTING
> + depends on CAN_SOFTING
> ---help---
> Support for PCMCIA cards from Softing Gmbh & some cards
> from Vector Gmbh.
> ---
> It will present the Softing stuff in Kconfig as if CAN_SOFTING_CS really
> depends on CAN_SOFTING, which is acceptible from a users perspective.

That's fine.
Acked-by: Randy Dunlap <[email protected]>

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

2011-02-13 18:38:15

by David Miller

[permalink] [raw]
Subject: Re: [PATCH -next/mmotm] net/can: fix softing build errors

From: Randy Dunlap <[email protected]>
Date: Sun, 13 Feb 2011 08:01:14 -0800

> On 02/13/11 05:37, Kurt Van Dijck wrote:
>> The 'select CAN_SOFTING' was introduced because it makes no sense to
>> have CAN_SOFTING_CS alone 'for a normal user', although there is no
>> real dependency.
>> Is a 'select' then still a good option, since it feels like repeating
>> all dependencies from CAN_SOFTING in CAN_SOFTING_CS?
>> What about this?
>>
>> diff --git a/drivers/net/can/softing/Kconfig b/drivers/net/can/softing/Kconfig
>> index 92bd6bd..55dd3e4 100644
>> --- a/drivers/net/can/softing/Kconfig
>> +++ b/drivers/net/can/softing/Kconfig
>> @@ -18,7 +18,7 @@ config CAN_SOFTING
>> config CAN_SOFTING_CS
>> tristate "Softing Gmbh CAN pcmcia cards"
>> depends on PCMCIA
>> - select CAN_SOFTING
>> + depends on CAN_SOFTING
>> ---help---
>> Support for PCMCIA cards from Softing Gmbh & some cards
>> from Vector Gmbh.
>> ---
>> It will present the Softing stuff in Kconfig as if CAN_SOFTING_CS really
>> depends on CAN_SOFTING, which is acceptible from a users perspective.
>
> That's fine.
> Acked-by: Randy Dunlap <[email protected]>

Kurt, please formally re-submit this with a proper commit message,
a signoff for you, and Randy's ACK.

Thanks.

2011-02-14 07:55:17

by Kurt Van Dijck

[permalink] [raw]
Subject: [PATCH] net/can/softing: make CAN_SOFTING_CS depend on CAN_SOFTING

The statement 'select CAN_SOFTING' may ignore the dependancies
for CAN_SOFTING while selecting CAN_SOFTING_CS, as is therefore a bad choice.

Signed-off-by: Kurt Van Dijck <[email protected]>
Acked-by: Randy Dunlap <[email protected]>
---
diff --git a/drivers/net/can/softing/Kconfig b/drivers/net/can/softing/Kconfig
index 92bd6bd..55dd3e4 100644
--- a/drivers/net/can/softing/Kconfig
+++ b/drivers/net/can/softing/Kconfig
@@ -18,7 +18,7 @@ config CAN_SOFTING
config CAN_SOFTING_CS
tristate "Softing Gmbh CAN pcmcia cards"
depends on PCMCIA
- select CAN_SOFTING
+ depends on CAN_SOFTING
---help---
Support for PCMCIA cards from Softing Gmbh & some cards
from Vector Gmbh.

2011-02-14 19:43:49

by David Miller

[permalink] [raw]
Subject: Re: [PATCH] net/can/softing: make CAN_SOFTING_CS depend on CAN_SOFTING

From: Kurt Van Dijck <[email protected]>
Date: Mon, 14 Feb 2011 08:55:07 +0100

> The statement 'select CAN_SOFTING' may ignore the dependancies
> for CAN_SOFTING while selecting CAN_SOFTING_CS, as is therefore a bad choice.
>
> Signed-off-by: Kurt Van Dijck <[email protected]>
> Acked-by: Randy Dunlap <[email protected]>

Applied, thanks.