24 Aug, 2020

1 commit

  • Replace the existing /* fall through */ comments and its variants with
    the new pseudo-keyword macro fallthrough[1]. Also, remove unnecessary
    fall-through markings when it is the case.

    [1] https://www.kernel.org/doc/html/v5.7/process/deprecated.html?highlight=fallthrough#implicit-switch-case-fall-through

    Signed-off-by: Gustavo A. R. Silva

    Gustavo A. R. Silva
     

14 Jun, 2020

1 commit

  • Since commit 84af7a6194e4 ("checkpatch: kconfig: prefer 'help' over
    '---help---'"), the number of '---help---' has been gradually
    decreasing, but there are still more than 2400 instances.

    This commit finishes the conversion. While I touched the lines,
    I also fixed the indentation.

    There are a variety of indentation styles found.

    a) 4 spaces + '---help---'
    b) 7 spaces + '---help---'
    c) 8 spaces + '---help---'
    d) 1 space + 1 tab + '---help---'
    e) 1 tab + '---help---' (correct indentation)
    f) 1 tab + 1 space + '---help---'
    g) 1 tab + 2 spaces + '---help---'

    In order to convert all of them to 1 tab + 'help', I ran the
    following commend:

    $ find . -name 'Kconfig*' | xargs sed -i 's/^[[:space:]]*---help---/\thelp/'

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

08 Jun, 2020

1 commit

  • Pull char/misc driver updates from Greg KH:
    "Here is the large set of char/misc driver patches for 5.8-rc1

    Included in here are:

    - habanalabs driver updates, loads

    - mhi bus driver updates

    - extcon driver updates

    - clk driver updates (approved by the clock maintainer)

    - firmware driver updates

    - fpga driver updates

    - gnss driver updates

    - coresight driver updates

    - interconnect driver updates

    - parport driver updates (it's still alive!)

    - nvmem driver updates

    - soundwire driver updates

    - visorbus driver updates

    - w1 driver updates

    - various misc driver updates

    In short, loads of different driver subsystem updates along with the
    drivers as well.

    All have been in linux-next for a while with no reported issues"

    * tag 'char-misc-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (233 commits)
    habanalabs: correctly cast u64 to void*
    habanalabs: initialize variable to default value
    extcon: arizona: Fix runtime PM imbalance on error
    extcon: max14577: Add proper dt-compatible strings
    extcon: adc-jack: Fix an error handling path in 'adc_jack_probe()'
    extcon: remove redundant assignment to variable idx
    w1: omap-hdq: print dev_err if irq flags are not cleared
    w1: omap-hdq: fix interrupt handling which did show spurious timeouts
    w1: omap-hdq: fix return value to be -1 if there is a timeout
    w1: omap-hdq: cleanup to add missing newline for some dev_dbg
    /dev/mem: Revoke mappings when a driver claims the region
    misc: xilinx-sdfec: convert get_user_pages() --> pin_user_pages()
    misc: xilinx-sdfec: cleanup return value in xsdfec_table_write()
    misc: xilinx-sdfec: improve get_user_pages_fast() error handling
    nvmem: qfprom: remove incorrect write support
    habanalabs: handle MMU cache invalidation timeout
    habanalabs: don't allow hard reset with open processes
    habanalabs: GAUDI does not support soft-reset
    habanalabs: add print for soft reset due to event
    habanalabs: improve MMU cache invalidation code
    ...

    Linus Torvalds
     

27 Apr, 2020

1 commit

  • Instead of having all the sysctl handlers deal with user pointers, which
    is rather hairy in terms of the BPF interaction, copy the input to and
    from userspace in common code. This also means that the strings are
    always NUL-terminated by the common code, making the API a little bit
    safer.

    As most handler just pass through the data to one of the common handlers
    a lot of the changes are mechnical.

    Signed-off-by: Christoph Hellwig
    Acked-by: Andrey Ignatov
    Signed-off-by: Al Viro

    Christoph Hellwig
     

23 Apr, 2020

11 commits

  • Now that all the drivers using parallel port has been converted to use
    device model, there is no driver left which has devmodel as false.
    Remove the part of the code which expects devmodel can be false.

    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-11-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sudip Mukherjee
     
  • All the drivers that are using parallel port has been converted to use
    the new device model api, and parport_register_device() is no longer
    used.

    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-10-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sudip Mukherjee
     
  • In preparation to remove parport_register_device(), copy the comments
    to parport_register_dev_model() and modify the parameters according to
    what parport_register_dev_model() has.

    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-9-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sudip Mukherjee
     
  • Standardize the define and the uses of printmode.

    Miscellanea:

    o Add missing statement termination ; where necessary

    Signed-off-by: Joe Perches
    Reviewed-by: Randy Dunlap
    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-8-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Joe Perches
     
  • Use a more common logging style.

    Miscellanea:

    o One message converted from KERN_INFO to KERN_DEBUG

    Signed-off-by: Joe Perches
    Reviewed-by: Randy Dunlap
    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-7-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Joe Perches
     
  • Use a more common logging style.

    Signed-off-by: Joe Perches
    Reviewed-by: Randy Dunlap
    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-6-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Joe Perches
     
  • Use a more common logging style.

    Signed-off-by: Joe Perches
    Reviewed-by: Randy Dunlap
    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-5-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Joe Perches
     
  • Use a more common logging style.

    Signed-off-by: Joe Perches
    Reviewed-by: Randy Dunlap
    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-4-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Joe Perches
     
  • Some of the logging can be poorly formatted because of unexpected
    line breaks given printks without KERN_CONT that should be pr_cont.

    Miscellanea:

    o Remove unnecessary spaces between function name and open parenthesis
    o Convert bare printks to pr_ where appropriate
    o Convert embedded function names to use %s, __func__
    o Coalesce formats
    o Realign arguments
    o Use do {} while (0) in a macro and not a bare if

    Signed-off-by: Joe Perches
    Reviewed-by: Randy Dunlap
    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-3-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Joe Perches
     
  • Use the more common kernel style.

    Miscellanea:

    o Coalesce formats
    o Realign arguments

    Signed-off-by: Joe Perches
    Reviewed-by: Randy Dunlap
    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-2-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Joe Perches
     
  • Eliminate warnings by using pr_debug which is the more typical
    kernel debugging style and also enable dynamic_debug on these
    outputs.

    Miscellaneous:

    o A few messages were logged at KERN_INFO when enabled, now KERN_DEBUG
    o Convert %d/%d to %zd/%zu to avoid compilation warnings

    Original-patch-by: Randy Dunlap
    Signed-off-by: Joe Perches
    Acked-by: Randy Dunlap
    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20200403134325.11523-1-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Joe Perches
     

13 Nov, 2019

4 commits

  • Modify parport daisy driver to use the new parallel port device model.

    Last attempt was '1aec4211204d ("parport: daisy: use new parport device
    model")' which failed as daisy was also trying to load the low level
    driver and that resulted in a deadlock.

    Cc: Michal Kubecek
    Signed-off-by: Sudip Mukherjee
    Tested-by: Steven Rostedt (VMware)
    Link: https://lore.kernel.org/r/20191016144540.18810-4-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sudip Mukherjee
     
  • Usually all the distro will load the parport low level driver as part
    of their initialization. But we can get into a situation where all the
    parallel port drivers are built as module and we unload all the modules
    at a later time. Then if we just do "modprobe parport" it will only
    load the parport module and will not load the low level driver which
    will actually register the ports. So, check the bus if there is any
    parport registered, if not, load the low level driver.

    We can get into the above situation with all distro but only Suse has
    setup the alias for "parport_lowlevel" and so it only works in Suse.
    Users of Debian based distro will need to load the lowlevel module
    manually.

    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20191016144540.18810-3-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sudip Mukherjee
     
  • We do not need to maintain a list of ports when we are using the
    device-model. The base layer is going to maintain the list for us and
    we can get the list of ports just using bus_for_each_dev().

    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20191016144540.18810-2-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sudip Mukherjee
     
  • The daisy device name is hardcoded, define it in the header file and
    use it in the code.

    Signed-off-by: Sudip Mukherjee
    Link: https://lore.kernel.org/r/20191016144540.18810-1-sudipm.mukherjee@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sudip Mukherjee
     

19 Sep, 2019

1 commit

  • Pull char/misc driver updates from Greg KH:
    "Here is the big char/misc driver pull request for 5.4-rc1.

    As has been happening in previous releases, more and more individual
    driver subsystem trees are ending up in here. Now if that is good or
    bad I can't tell, but hopefully it makes your life easier as it's more
    of an aggregation of trees together to one merge point for you.

    Anyway, lots of stuff in here:
    - habanalabs driver updates
    - thunderbolt driver updates
    - misc driver updates
    - coresight and intel_th hwtracing driver updates
    - fpga driver updates
    - extcon driver updates
    - some dma driver updates
    - char driver updates
    - android binder driver updates
    - nvmem driver updates
    - phy driver updates
    - parport driver fixes
    - pcmcia driver fix
    - uio driver updates
    - w1 driver updates
    - configfs fixes
    - other assorted driver updates

    All of these have been in linux-next for a long time with no reported
    issues"

    * tag 'char-misc-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (200 commits)
    misc: mic: Use PTR_ERR_OR_ZERO rather than its implementation
    habanalabs: correctly cast variable to __le32
    habanalabs: show correct id in error print
    habanalabs: stop using the acronym KMD
    habanalabs: display card name as sensors header
    habanalabs: add uapi to retrieve aggregate H/W events
    habanalabs: add uapi to retrieve device utilization
    habanalabs: Make the Coresight timestamp perpetual
    habanalabs: explicitly set the queue-id enumerated numbers
    habanalabs: print to kernel log when reset is finished
    habanalabs: replace __le32_to_cpu with le32_to_cpu
    habanalabs: replace __cpu_to_le32/64 with cpu_to_le32/64
    habanalabs: Handle HW_IP_INFO if device disabled or in reset
    habanalabs: Expose devices after initialization is done
    habanalabs: improve security in Debug IOCTL
    habanalabs: use default structure for user input in Debug IOCTL
    habanalabs: Add descriptive name to PSOC app status register
    habanalabs: Add descriptive names to PSOC scratch-pad registers
    habanalabs: create two char devices per ASIC
    habanalabs: change device_setup_cdev() to be more generic
    ...

    Linus Torvalds
     

04 Sep, 2019

1 commit


05 Aug, 2019

2 commits


10 Jul, 2019

1 commit

  • Pull Documentation updates from Jonathan Corbet:
    "It's been a relatively busy cycle for docs:

    - A fair pile of RST conversions, many from Mauro. These create more
    than the usual number of simple but annoying merge conflicts with
    other trees, unfortunately. He has a lot more of these waiting on
    the wings that, I think, will go to you directly later on.

    - A new document on how to use merges and rebases in kernel repos,
    and one on Spectre vulnerabilities.

    - Various improvements to the build system, including automatic
    markup of function() references because some people, for reasons I
    will never understand, were of the opinion that
    :c:func:``function()`` is unattractive and not fun to type.

    - We now recommend using sphinx 1.7, but still support back to 1.4.

    - Lots of smaller improvements, warning fixes, typo fixes, etc"

    * tag 'docs-5.3' of git://git.lwn.net/linux: (129 commits)
    docs: automarkup.py: ignore exceptions when seeking for xrefs
    docs: Move binderfs to admin-guide
    Disable Sphinx SmartyPants in HTML output
    doc: RCU callback locks need only _bh, not necessarily _irq
    docs: format kernel-parameters -- as code
    Doc : doc-guide : Fix a typo
    platform: x86: get rid of a non-existent document
    Add the RCU docs to the core-api manual
    Documentation: RCU: Add TOC tree hooks
    Documentation: RCU: Rename txt files to rst
    Documentation: RCU: Convert RCU UP systems to reST
    Documentation: RCU: Convert RCU linked list to reST
    Documentation: RCU: Convert RCU basic concepts to reST
    docs: filesystems: Remove uneeded .rst extension on toctables
    scripts/sphinx-pre-install: fix out-of-tree build
    docs: zh_CN: submitting-drivers.rst: Remove a duplicated Documentation/
    Documentation: PGP: update for newer HW devices
    Documentation: Add section about CPU vulnerabilities for Spectre
    Documentation: platform: Delete x86-laptop-drivers.txt
    docs: Note that :c:func: should no longer be used
    ...

    Linus Torvalds
     

19 Jun, 2019

1 commit

  • Based on 2 normalized pattern(s):

    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 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 #

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-only

    has been chosen to replace the boilerplate/reference in 4122 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Enrico Weigelt
    Reviewed-by: Kate Stewart
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190604081206.933168790@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

15 Jun, 2019

1 commit

  • The kbuild documentation clearly shows that the documents
    there are written at different times: some use markdown,
    some use their own peculiar logic to split sections.

    Convert everything to ReST without affecting too much
    the author's style and avoiding adding uneeded markups.

    The conversion is actually:
    - add blank lines and identation in order to identify paragraphs;
    - fix tables markups;
    - add some lists markups;
    - mark literal blocks;
    - adjust title markups.

    At its new index.rst, let's add a :orphan: while this is not linked to
    the main index.rst file, in order to avoid build warnings.

    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     

09 Jun, 2019

1 commit

  • Pull char/misc driver fixes from Greg KH:
    "Here are some small char and misc driver fixes for 5.2-rc4 to resolve
    a number of reported issues.

    The most "notable" one here is the kernel headers in proc^Wsysfs
    fixes. Those changes move the header file info into sysfs and fixes
    the build issues that you reported.

    Other than that, a bunch of small habanalabs driver fixes, some fpga
    driver fixes, and a few other tiny driver fixes.

    All of these have been in linux-next for a while with no reported
    issues"

    * tag 'char-misc-5.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
    habanalabs: Read upper bits of trace buffer from RWPHI
    habanalabs: Fix virtual address access via debugfs for 2MB pages
    fpga: zynqmp-fpga: Correctly handle error pointer
    habanalabs: fix bug in checking huge page optimization
    habanalabs: Avoid using a non-initialized MMU cache mutex
    habanalabs: fix debugfs code
    uapi/habanalabs: add opcode for enable/disable device debug mode
    habanalabs: halt debug engines on user process close
    test_firmware: Use correct snprintf() limit
    genwqe: Prevent an integer overflow in the ioctl
    parport: Fix mem leak in parport_register_dev_model
    fpga: dfl: expand minor range when registering chrdev region
    fpga: dfl: Add lockdep classes for pdata->lock
    fpga: dfl: afu: Pass the correct device to dma_mapping_error()
    fpga: stratix10-soc: fix use-after-free on s10_init()
    w1: ds2408: Fix typo after 49695ac46861 (reset on output_write retry with readback)
    kheaders: Do not regenerate archive if config is not changed
    kheaders: Move from proc to sysfs
    lkdtm/bugs: Adjust recursion test to avoid elision
    lkdtm/usercopy: Moves the KERNEL_DS test to non-canonical

    Linus Torvalds
     

31 May, 2019

2 commits

  • Based on 1 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 of the license or at
    your option any later version this program is distributed in the
    hope that it will be useful but without any warranty without even
    the implied warranty of merchantability or fitness for a particular
    purpose see the gnu general public license for more details you
    should have received a copy of the gnu general public license along
    with this program if not write to the free software foundation inc
    59 temple place suite 330 boston ma 02111 1307 usa

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-or-later

    has been chosen to replace the boilerplate/reference in 1334 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Allison Randal
    Reviewed-by: Richard Fontana
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190527070033.113240726@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     
  • Based on 1 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 of the license or at
    your option any later version

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-or-later

    has been chosen to replace the boilerplate/reference in 3029 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190527070032.746973796@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

25 May, 2019

1 commit

  • BUG: memory leak
    unreferenced object 0xffff8881df48cda0 (size 16):
    comm "syz-executor.0", pid 5077, jiffies 4295994670 (age 22.280s)
    hex dump (first 16 bytes):
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
    backtrace:
    [] parport_register_dev_model+0x141/0x6e0 [parport]
    [] 0xffffffffc15d1196
    [] platform_drv_probe+0x7e/0x100
    [] really_probe+0x342/0x4d0
    [] driver_probe_device+0x8c/0x170
    [] __device_attach_driver+0xda/0x100
    [] bus_for_each_drv+0xfe/0x170
    [] __device_attach+0x190/0x230
    [] bus_probe_device+0x123/0x140
    [] device_add+0x7cc/0xce0
    [] platform_device_add+0x230/0x3c0
    [] 0xffffffffc15d0949
    [] port_check+0x3b/0x50 [parport]
    [] bus_for_each_dev+0x115/0x180
    [] __parport_register_driver+0x1f0/0x210 [parport]
    [] 0xffffffffc15d803e

    After commit 4e5a74f1db8d ("parport: Revert "parport: fix
    memory leak""), free_pardevice do not free par_dev->state,
    we should free it in error path of parport_register_dev_model
    before return.

    Reported-by: Hulk Robot
    Fixes: 4e5a74f1db8d ("parport: Revert "parport: fix memory leak"")
    Signed-off-by: YueHaibing
    Signed-off-by: Greg Kroah-Hartman

    YueHaibing
     

21 May, 2019

2 commits


09 May, 2019

1 commit

  • Pull DMA mapping updates from Christoph Hellwig:

    - remove the already broken support for NULL dev arguments to the DMA
    API calls

    - Kconfig tidyups

    * tag 'dma-mapping-5.2' of git://git.infradead.org/users/hch/dma-mapping:
    dma-mapping: add a Kconfig symbol to indicate arch_dma_prep_coherent presence
    dma-mapping: remove an unnecessary NULL check
    x86/dma: Remove the x86_dma_fallback_dev hack
    dma-mapping: remove leftover NULL device support
    arm: use a dummy struct device for ISA DMA use of the DMA API
    pxa3xx-gcu: pass struct device to dma_mmap_coherent
    gbefb: switch to managed version of the DMA allocator
    da8xx-fb: pass struct device to DMA API functions
    parport_ip32: pass struct device to DMA API functions
    dma: select GENERIC_ALLOCATOR for DMA_REMAP

    Linus Torvalds
     

26 Apr, 2019

1 commit

  • In preparation to enabling -Wimplicit-fallthrough, mark switch
    cases where we are expecting to fall through.

    This patch fixes the following warning:

    drivers/parport/ieee1284.c: In function ‘parport_read’:
    drivers/parport/ieee1284.c:722:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
    if (parport_negotiate (port, IEEE1284_MODE_NIBBLE)) {
    ^
    drivers/parport/ieee1284.c:726:2: note: here
    case IEEE1284_MODE_NIBBLE:
    ^~~~

    Warning level 3 was used: -Wimplicit-fallthrough=3

    Notice that, in this particular case, the code comment is modified
    in accordance with what GCC is expecting to find.

    This patch is part of the ongoing efforts to enable
    -Wimplicit-fallthrough.

    Signed-off-by: Gustavo A. R. Silva
    Signed-off-by: Sudip Mukherjee
    Signed-off-by: Greg Kroah-Hartman

    Gustavo A. R. Silva
     

08 Apr, 2019

1 commit


01 Apr, 2019

1 commit


28 Mar, 2019

1 commit


26 Mar, 2019

1 commit

  • This reverts commit 1aec4211204d9463d1fd209eb50453de16254599.

    Steven Rostedt reports that it causes a hang at bootup and bisected it
    to this commit.

    The troigger is apparently a module alias for "parport_lowlevel" that
    points to "parport_pc", which causes a hang with

    modprobe -q -- parport_lowlevel

    blocking forever with a backtrace like this:

    wait_for_completion_killable+0x1c/0x28
    call_usermodehelper_exec+0xa7/0x108
    __request_module+0x351/0x3d8
    get_lowlevel_driver+0x28/0x41 [parport]
    __parport_register_driver+0x39/0x1f4 [parport]
    daisy_drv_init+0x31/0x4f [parport]
    parport_bus_init+0x5d/0x7b [parport]
    parport_default_proc_register+0x26/0x1000 [parport]
    do_one_initcall+0xc2/0x1e0
    do_init_module+0x50/0x1d4
    load_module+0x1c2e/0x21b3
    sys_init_module+0xef/0x117

    Supid says:
    "Due to the new device model daisy driver will now try to find the
    parallel ports while trying to register its driver so that it can bind
    with them. Now, since daisy driver is loaded while parport bus is
    initialising the list of parport is still empty and it tries to load
    the lowlevel driver, which has an alias set to parport_pc, now causes
    a deadlock"

    But I don't think the daisy driver should be loaded by the parport
    initialization in the first place, so let's revert the whole change.

    If the daisy driver can just initialize separately on its own (like a
    driver should), instead of hooking into the parport init sequence
    directly, this issue probably would go away.

    Reported-and-bisected-by: Steven Rostedt (VMware)
    Reported-by: Michal Kubecek
    Acked-by: Greg Kroah-Hartman
    Cc: Sudip Mukherjee
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

14 Feb, 2019

1 commit


11 Feb, 2019

1 commit

  • In the original code before 181bf1e815a2 the loop was continuing until
    it finds the first matching superios[i].io and p->base.
    But after 181bf1e815a2 the logic changed and the loop now returns the
    pointer to the first mismatched array element which is then used in
    get_superio_dma() and get_superio_irq() and thus returning the wrong
    value.
    Fix the condition so that it now returns the correct pointer.

    Fixes: 181bf1e815a2 ("parport_pc: clean up the modified while loops using for")
    Cc: Alan Cox
    Cc: stable@vger.kernel.org
    Signed-off-by: QiaoChong
    [rewrite the commit message]
    Signed-off-by: Sudip Mukherjee
    Signed-off-by: Greg Kroah-Hartman

    QiaoChong