07 Jan, 2019

1 commit

  • On the expectation that some environments may not upgrade libdaxctl
    (userspace component that depends on the /sys/class/dax hierarchy),
    provide a default / legacy dax_pmem_compat driver. The dax_pmem_compat
    driver implements the original /sys/class/dax sysfs layout rather than
    /sys/bus/dax. When userspace is upgraded it can blacklist this module
    and switch to the dax_pmem driver going forward.

    CONFIG_DEV_DAX_PMEM_COMPAT and supporting code will be deleted according
    to the dax_pmem entry in Documentation/ABI/obsolete/.

    Signed-off-by: Dan Williams

    Dan Williams
     

02 Jul, 2018

1 commit


16 Jun, 2018

1 commit


15 Nov, 2017

1 commit

  • Pull GPIO updates from Linus Walleij:
    "This is the bulk of GPIO changes for the v4.15 kernel cycle:

    Core:

    - Fix the semantics of raw GPIO to actually be raw. No inversion
    semantics as before, but also no open draining, and allow the raw
    operations to affect lines used for interrupts as the caller
    supposedly knows what they are doing if they are getting the big
    hammer.

    - Rewrote the __inner_function() notation calls to names that make
    more sense. I just find this kind of code disturbing.

    - Drop the .irq_base() field from the gpiochip since now all IRQs are
    mapped dynamically. This is nice.

    - Support for .get_multiple() in the core driver API. This allows us
    to read several GPIO lines with a single register read. This has
    high value for some usecases: it can be used to create
    oscilloscopes and signal analyzers and other things that rely on
    reading several lines at exactly the same instant. Also a generally
    nice optimization. This uses the new assign_bit() macro from the
    bitops lib that was ACKed by Andrew Morton and is implemented for
    two drivers, one of them being the generic MMIO driver so everyone
    using that will be able to benefit from this.

    - Do not allow requests of Open Drain and Open Source setting of a
    GPIO line simultaneously. If the hardware actually supports
    enabling both at the same time the electrical result would be
    disastrous.

    - A new interrupt chip core helper. This will be helpful to deal with
    "banked" GPIOs, which means GPIO controllers with several logical
    blocks of GPIO inside them. This is several gpiochips per device in
    the device model, in contrast to the case when there is a 1-to-1
    relationship between a device and a gpiochip.

    New drivers:

    - Maxim MAX3191x industrial serializer, a very interesting piece of
    professional I/O hardware.

    - Uniphier GPIO driver. This is the GPIO block from the recent
    Socionext (ex Fujitsu and Panasonic) platform.

    - Tegra 186 driver. This is based on the new banked GPIO
    infrastructure.

    Other improvements:

    - Some documentation improvements.

    - Wakeup support for the DesignWare DWAPB GPIO controller.

    - Reset line support on the DesignWare DWAPB GPIO controller.

    - Several non-critical bug fixes and improvements for the Broadcom
    BRCMSTB driver.

    - Misc non-critical bug fixes like exotic errorpaths, removal of dead
    code etc.

    - Explicit comments on fall-through switch() statements"

    * tag 'gpio-v4.15-1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (65 commits)
    gpio: tegra186: Remove tegra186_gpio_lock_class
    gpio: rcar: Add r8a77995 (R-Car D3) support
    pinctrl: bcm2835: Fix some merge fallout
    gpio: Fix undefined lock_dep_class
    gpio: Automatically add lockdep keys
    gpio: Introduce struct gpio_irq_chip.first
    gpio: Disambiguate struct gpio_irq_chip.nested
    gpio: Add Tegra186 support
    gpio: Export gpiochip_irq_{map,unmap}()
    gpio: Implement tighter IRQ chip integration
    gpio: Move lock_key into struct gpio_irq_chip
    gpio: Move irq_valid_mask into struct gpio_irq_chip
    gpio: Move irq_nested into struct gpio_irq_chip
    gpio: Move irq_chained_parent to struct gpio_irq_chip
    gpio: Move irq_default_type to struct gpio_irq_chip
    gpio: Move irq_handler to struct gpio_irq_chip
    gpio: Move irqdomain into struct gpio_irq_chip
    gpio: Move irqchip into struct gpio_irq_chip
    gpio: Introduce struct gpio_irq_chip
    pinctrl: armada-37xx: remove unused variable
    ...

    Linus Torvalds
     

20 Oct, 2017

1 commit


05 Oct, 2017

1 commit

  • This tunable has been obsolete since 2.6.32, and writes to the
    file have been failing and complaining in dmesg since then:

    nr_pdflush_threads exported in /proc is scheduled for removal

    That was 8 years ago. Remove the file ABI obsolete notice, and
    the sysfs file.

    Reviewed-by: Jan Kara
    Signed-off-by: Jens Axboe

    Jens Axboe
     

13 Apr, 2017

1 commit

  • /sys/firmware/acpi/hotplug/force_remove was presumably added to support
    auto offlining in the past. This is, however, inherently dangerous for
    some hotplugable resources like memory. The memory offlining fails when
    the memory is still in use and cannot be dropped or migrated. If we
    ignore the failure we are basically allowing for subtle memory
    corruption or a crash.

    We have actually noticed the later while hitting BUG() during the memory
    hotremove (remove_memory):
    ret = walk_memory_range(PFN_DOWN(start), PFN_UP(start + size - 1), NULL,
    check_memblock_offlined_cb);
    if (ret)
    BUG();

    it took us quite non-trivial time realize that the customer had
    force_remove enabled. Even if the BUG was removed here and we could
    propagate the error up the call chain it wouldn't help at all because
    then we would hit a crash or a memory corruption later and harder to
    debug. So force_remove is unfixable for the memory hotremove. We haven't
    checked other hotplugable resources to be prone to a similar problems.

    Remove the force_remove functionality because it is not fixable currently.
    Keep the sysfs file and report an error if somebody tries to enable it.
    Encourage users to report about the missing functionality and work with
    them with an alternative solution.

    Reviewed-by: Lee, Chun-Yi
    Signed-off-by: Michal Hocko
    Signed-off-by: Rafael J. Wysocki

    Michal Hocko
     

23 Feb, 2017

1 commit

  • We had a deprecated_attr_warn() warning for 2 years and now the time has
    come and we finally can do the cleanup.

    The plan was as follows:

    : per-stat sysfs attributes are considered to be deprecated.
    : The basic strategy is:
    : -- the existing RW nodes will be downgraded to WO nodes (in linux 4.11)
    : -- deprecated RO sysfs nodes will eventually be removed (in linux 4.11)
    :
    : The list of deprecated attributes can be found here:
    : Documentation/ABI/obsolete/sysfs-block-zram
    :
    : Basically, every attribute that has its own read accessible sysfs
    : node (e.g. num_reads) *AND* is accessible via one of the stat files
    : (zram/stat or zram/io_stat or zram/mm_stat) is considered
    : to be deprecated.

    The patch also removes `obsolete/sysfs-block-zram', clean ups
    `testing/sysfs-block-zram' and tweaks zram.txt files.

    Link: http://lkml.kernel.org/r/20170118035838.11090-1-sergey.senozhatsky@gmail.com
    Signed-off-by: Sergey Senozhatsky
    Acked-by: Minchan Kim
    Cc: Jonathan Corbet
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sergey Senozhatsky
     

28 Apr, 2016

1 commit


20 Mar, 2016

1 commit

  • Pull networking updates from David Miller:
    "Highlights:

    1) Support more Realtek wireless chips, from Jes Sorenson.

    2) New BPF types for per-cpu hash and arrap maps, from Alexei
    Starovoitov.

    3) Make several TCP sysctls per-namespace, from Nikolay Borisov.

    4) Allow the use of SO_REUSEPORT in order to do per-thread processing
    of incoming TCP/UDP connections. The muxing can be done using a
    BPF program which hashes the incoming packet. From Craig Gallek.

    5) Add a multiplexer for TCP streams, to provide a messaged based
    interface. BPF programs can be used to determine the message
    boundaries. From Tom Herbert.

    6) Add 802.1AE MACSEC support, from Sabrina Dubroca.

    7) Avoid factorial complexity when taking down an inetdev interface
    with lots of configured addresses. We were doing things like
    traversing the entire address less for each address removed, and
    flushing the entire netfilter conntrack table for every address as
    well.

    8) Add and use SKB bulk free infrastructure, from Jesper Brouer.

    9) Allow offloading u32 classifiers to hardware, and implement for
    ixgbe, from John Fastabend.

    10) Allow configuring IRQ coalescing parameters on a per-queue basis,
    from Kan Liang.

    11) Extend ethtool so that larger link mode masks can be supported.
    From David Decotigny.

    12) Introduce devlink, which can be used to configure port link types
    (ethernet vs Infiniband, etc.), port splitting, and switch device
    level attributes as a whole. From Jiri Pirko.

    13) Hardware offload support for flower classifiers, from Amir Vadai.

    14) Add "Local Checksum Offload". Basically, for a tunneled packet
    the checksum of the outer header is 'constant' (because with the
    checksum field filled into the inner protocol header, the payload
    of the outer frame checksums to 'zero'), and we can take advantage
    of that in various ways. From Edward Cree"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1548 commits)
    bonding: fix bond_get_stats()
    net: bcmgenet: fix dma api length mismatch
    net/mlx4_core: Fix backward compatibility on VFs
    phy: mdio-thunder: Fix some Kconfig typos
    lan78xx: add ndo_get_stats64
    lan78xx: handle statistics counter rollover
    RDS: TCP: Remove unused constant
    RDS: TCP: Add sysctl tunables for sndbuf/rcvbuf on rds-tcp socket
    net: smc911x: convert pxa dma to dmaengine
    team: remove duplicate set of flag IFF_MULTICAST
    bonding: remove duplicate set of flag IFF_MULTICAST
    net: fix a comment typo
    ethernet: micrel: fix some error codes
    ip_tunnels, bpf: define IP_TUNNEL_OPTS_MAX and use it
    bpf, dst: add and use dst_tclassid helper
    bpf: make skb->tc_classid also readable
    net: mvneta: bm: clarify dependencies
    cls_bpf: reset class and reuse major in da
    ldmvsw: Checkpatch sunvnet.c and sunvnet_common.c
    ldmvsw: Add ldmvsw.c driver code
    ...

    Linus Torvalds
     

24 Feb, 2016

2 commits

  • There is still quite a bit of code using this interface, so we can't
    just remove it. Hopefully it will be possible in the future, but since
    its scheduled removal date is past 2 years already, we are better having
    the documentation reflecting the current state of things.

    Signed-off-by: João Paulo Rechi Vita
    Signed-off-by: Johannes Berg

    João Paulo Rechi Vita
     
  • This was scheduled to be removed in 2012 by:

    commit 69c86373c6ea1149aa559e6088362d58d8ec8835
    Author: florian@mickler.org
    Date: Wed Feb 24 12:05:16 2010 +0100

    Document the rfkill sysfs ABI

    This moves sysfs ABI info from Documentation/rfkill.txt to the
    ABI subfolder and reformats it.

    This also schedules the deprecated sysfs parts to be removed in
    2012 (claim file) and 2014 (state file).

    Signed-off-by: Florian Mickler
    Signed-off-by: John W. Linville

    Signed-off-by: João Paulo Rechi Vita
    Signed-off-by: Johannes Berg

    João Paulo Rechi Vita
     

09 Feb, 2016

1 commit


21 Oct, 2015

1 commit

  • Deprecates all Roccat sysfs attributes except the ones for the old Kone by
    moving abi descriptions from testing to obsolete. For most devices everything
    can be done using the hidraw ioctls HIDIOCGFEATURE and HIDIOCSFEATURE, so I
    would suggest future removal of device specific drivers. The userspace tools
    don't use these attributes for a year now. The first Kone is not fully
    HID-compliant and will still need a module.

    Signed-off-by: Stefan Achatz
    Signed-off-by: Jiri Kosina

    Stefan Achatz
     

16 Apr, 2015

1 commit

  • Add Documentation/ABI/obsolete/sysfs-block-zram file and list obsolete and
    deprecated attributes there. The patch also adds additional information
    to zram documentation and describes the basic strategy:

    - the existing RW nodes will be downgraded to WO nodes (in 4.11)
    - deprecated RO sysfs nodes will eventually be removed (in 4.11)

    Users will be additionally notified about deprecated attr usage by
    pr_warn_once() (added to every deprecated attr _show()), as suggested by
    Minchan Kim.

    User space is advised to use zram/stat, zram/io_stat and
    zram/mm_stat files.

    Signed-off-by: Sergey Senozhatsky
    Reported-by: Minchan Kim
    Cc: Nitin Gupta
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sergey Senozhatsky
     

13 Dec, 2012

1 commit


12 Nov, 2012

5 commits


05 Nov, 2012

1 commit


09 Oct, 2012

1 commit


01 Aug, 2012

1 commit

  • Since per-BDI flusher threads were introduced in 2.6, the pdflush
    mechanism is not used any more. But the old interface exported through
    /proc/sys/vm/nr_pdflush_threads still exists and is obviously useless.

    For back-compatibility, printk warning information and return 2 to notify
    the users that the interface is removed.

    Signed-off-by: Wanpeng Li
    Cc: Wu Fengguang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Wanpeng Li
     

07 Mar, 2012

1 commit


26 Jul, 2011

1 commit

  • The badness() function in the oom killer was renamed to oom_badness() in
    a63d83f427fb ("oom: badness heuristic rewrite") since it is a globally
    exported function for clarity.

    The prototype for the old function still existed in linux/oom.h, so remove
    it. There are no existing users.

    Also fixes documentation and comment references to badness() and adjusts
    them accordingly.

    Signed-off-by: David Rientjes
    Reviewed-by: KOSAKI Motohiro
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Rientjes
     

24 May, 2011

1 commit


18 May, 2011

1 commit

  • startup_profile and actual_profile didn't work as expected. Also
    as the actual profile is persistent, the distinction between the
    two was ambiguous, so both use the same code now and startup_profile
    has been deprecated. Also the event is now propagated through
    chardev. The userland tool has been updated to support this change.

    Signed-off-by: Stefan Achatz
    Signed-off-by: Jiri Kosina

    Stefan Achatz
     

12 Nov, 2010

1 commit

  • /proc/pid/oom_adj was deprecated in August 2010 with the introduction of
    the new oom killer heuristic.

    This patch copies the Documentation/feature-removal-schedule.txt entry for
    this tunable to the Documentation/ABI/obsolete directory so nobody misses
    it.

    Signed-off-by: David Rientjes
    Reported-by: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Rientjes
     

11 Oct, 2010

1 commit

  • The drivers
    - ohci1394 (controller driver)
    - ieee1394 (core)
    - dv1394, raw1394, video1394 (userspace ABI)
    - eth1394, sbp2 (protocol drivers)
    are replaced by
    - firewire-ohci (controller driver)
    - firewire-core (core and userspace ABI)
    - firewire-net, firewire-sbp2 (protocol drivers)
    which are more featureful, better performing, and more secure than the older
    drivers; all with a smaller and more modern code base.

    The driver firedtv in drivers/media/dvb/firewire/ contains backends to both
    ieee1394 and firewire-core. Its ieee1394 backend code can be removed in an
    independent commit; firedtv as-is builds and works fine without ieee1394.

    The driver pcilynx (an incomplete controller driver) is deleted without
    replacement since PCILynx cards are extremely rare. Owners of these cards
    use them with the stand-alone bus sniffer driver nosy instead.

    The drivers nosy and init_ohci1394_dma which do not interact with either of
    the two IEEE 1394 stacks are not affected by the ieee1394 subsystem removal.

    There are still some issues with the newer firewire subsystem compared to
    the older one:
    - The rare and quirky controllers ALi M52xx, Apple UniNorth v1, NVIDIA
    NForce2 are even less well supported by firewire-ohci than by ohci1394.
    I am looking into the M52xx issue.
    - The experimental firewire-net is reportedly less stable than its
    experimental cousin eth1394.
    - Audio playback of a certain group of audio devices (ones based on DICE
    chipset with EAP; supported by prerelease FFADO code) does not work yet.
    This issue is still under investigation.
    - There were some ieee1394 based out-of-the-mainline drivers. Of them,
    only lisight, an audio driver for iSight webcams, seems still useful.
    Work is underway to reimplement it on top of firewire-core.

    All these remainig issues are minor; they should not stand in the way of
    overall better user experience of IEEE 1394 on Linux, together with a
    reduction in support efforts and maintenance burden. The coexistence of two
    IEEE 1394 kernel driver stacks in the mainline since 2.6.22 shall end now,
    as announced earlier this year.

    Signed-off-by: Stefan Richter

    Stefan Richter
     

21 May, 2010

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (229 commits)
    USB: remove unused usb_buffer_alloc and usb_buffer_free macros
    usb: musb: update gfp/slab.h includes
    USB: ftdi_sio: fix legacy SIO-device header
    USB: kl5usb105: reimplement using generic framework
    USB: kl5usb105: minor clean ups
    USB: kl5usb105: fix memory leak
    USB: io_ti: use kfifo to implement write buffering
    USB: io_ti: remove unsused private counter
    USB: ti_usb: use kfifo to implement write buffering
    USB: ir-usb: fix incorrect write-buffer length
    USB: aircable: fix incorrect write-buffer length
    USB: safe_serial: straighten out read processing
    USB: safe_serial: reimplement read using generic framework
    USB: safe_serial: reimplement write using generic framework
    usb-storage: always print quirks
    USB: usb-storage: trivial debug improvements
    USB: oti6858: use port write fifo
    USB: oti6858: use kfifo to implement write buffering
    USB: cypress_m8: use kfifo to implement write buffering
    USB: cypress_m8: remove unused drain define
    ...

    Fix up conflicts (due to usb_buffer_alloc/free renaming) in
    drivers/input/tablet/acecad.c
    drivers/input/tablet/kbtab.c
    drivers/input/tablet/wacom_sys.c
    drivers/media/video/gspca/gspca.c
    sound/usb/usbaudio.c

    Linus Torvalds
     
  • This patch (as1367) deprecates USB's power/level sysfs attribute in
    favor of the power/control attribute provided by the runtime PM core.
    The two attributes do the same thing.

    It would be nice to replace power/level with a symlink to
    power/control, but at the moment sysfs doesn't offer any way to do so.

    Signed-off-by: Alan Stern
    Signed-off-by: Greg Kroah-Hartman

    Alan Stern
     

11 Mar, 2010

1 commit

  • This moves sysfs ABI info from Documentation/rfkill.txt to the
    ABI subfolder and reformats it.

    This also schedules the deprecated sysfs parts to be removed in
    2012 (claim file) and 2014 (state file).

    Signed-off-by: Florian Mickler
    Signed-off-by: John W. Linville

    florian@mickler.org
     

18 Apr, 2008

1 commit

  • /sys/fs is where we really want file system specific sysfs objects.

    Ocfs2-tools has been updated to look in /sys/fs/o2cb. We can maintain
    backwards compatibility with old ocfs2-tools by using a sysfs symlink. After
    some time (2 years), the symlink can be safely removed. This patch also adds
    documentation to make it easier for people to figure out what /sys/fs/o2cb
    is used for.

    Signed-off-by: Mark Fasheh

    Mark Fasheh
     

10 Apr, 2007

1 commit

  • Nobody ported ffmpeg from dv1394 to rawiso yet, and there is no
    justification to remove dv1394 right now.

    Nevertheless, a strong deprecation of this ABI makes a lot of sense,
    especially as Kristian H's drivers shape up to be an attractive
    alternative to the existing ones. But we don't have a schedule at the
    moment.

    Signed-off-by: Stefan Richter

    Stefan Richter
     

26 Sep, 2006

1 commit


22 Jun, 2006

1 commit