lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2507f7cc-89ec-0cd2-9dec-68aee1350ac8@linaro.org>
Date:   Sun, 16 Sep 2018 15:08:46 +0100
From:   Srinivas Kandagatla <srinivas.kandagatla@...aro.org>
To:     Bartosz Golaszewski <brgl@...ev.pl>,
        "David S . Miller" <davem@...emloft.net>,
        Mauro Carvalho Chehab <mchehab+samsung@...nel.org>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Andrew Morton <akpm@...ux-foundation.org>,
        Arnd Bergmann <arnd@...db.de>,
        Jonathan Corbet <corbet@....net>, Sekhar Nori <nsekhar@...com>,
        Kevin Hilman <khilman@...nel.org>,
        David Lechner <david@...hnology.com>,
        Boris Brezillon <boris.brezillon@...tlin.com>,
        Andrew Lunn <andrew@...n.ch>, Alban Bedel <albeu@...e.fr>,
        Maxime Ripard <maxime.ripard@...tlin.com>,
        Chen-Yu Tsai <wens@...e.org>
Cc:     linux-doc@...r.kernel.org, linux-kernel@...r.kernel.org,
        linux-arm-kernel@...ts.infradead.org,
        Bartosz Golaszewski <bgolaszewski@...libre.com>
Subject: Re: [PATCH v4 00/22] nvmem: rework of the subsystem for non-DT users



On 14/09/18 15:39, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bgolaszewski@...libre.com>
> 
> NOTE: I decided to post v4 despite no new reviews from Srinivas as I'll
> be off next week. There were a couple issues reported by the kbuild bot
> and one bug I noticed after sending v3.
> 
> This series contains nvmem framework changes prerequisite for further
> development of my previous series[1] that aims at removal of the
> platform data struct from at24 EEPROM driver.
> 
> The patches are conceptually split into a couple groups.
> 
> First five patches fix issues with existing issues.
> 
> Patch 6 switches the nvmem providers to using kref which is necessary
> for removal of the return value from nvmem_unregister(). This is an
> approach similar to the one used in the clock framework where the
> provider is only removed after the last reference to it is dropped.
> 
> Patch 7 changes the errno returned from the driver after kzalloc()
> fails from -EINVAL to -ENOMEM which makes more sense.
> 
> Patches 8-10 convert last remaining users of nvmem_unregister() who
> still check its return value to using devm_nvmem_unregister() and
> patch 11 changes its return value from int to void.
> 
> Patches 12-15 introduce the most significant changes of this series:
> we remove the global cell list, add support for static cell definitions
> external to the provider structure, change the way DT lookup works and
> allow to associate resources and consumers using lookup tables. The way
> nvmem_cell_get() for non-DT users is changed but there are no current
> users and it's currently broken anyway (cell being removed after a call
> to nvmem_cell_put()).
> 
> Patch 16 updates the documentation.
> 
> Patch 17 adds support for notifiers to nvmem so that users can
> subscribe for events such as device or cell registration or removal.
> 
> Patches 18 & 19 add some minor improvements to the codebase.
> 
> Last three patches contain fixes to warnings emitted by checkpatch.
> It's a good moment to add them if we're already touching a big part
> of the subsystem's code.
> 
> Tested both DT and non-DT use cases.
> 
> [1] https://lkml.org/lkml/2018/8/10/149
> 
> v1 -> v2:
> - extended the lookup structure with a proper con_id independent from the
>    cell name defined in the cell definition table
> - added a patch that makes the naming convention for the cell name argument
>    in the nvmem_cell_get() family of functions consistent
> - there were two users of nvmem_unregister() that still checked the return
>    value, now switched to devm_nvmem_register()
> - fixed build failures reported by kbuild test robot
> 
> v2 -> v3:
> - dropped the patch removing unused APIs and introduced changes on top of
>    existing code instead
> - fixed nvmem provider reference decreasing in error paths
> - added checkpatch fixes
> - removed nvmem-machine.h and distributed new definitions among existing
>    consumer and provider headers
> - reordered patches thematically
> - added more patches fixing issues in existing codebase
> 
> v3 -> v4:
> - fixed the notifier chain call when removing nvmem devices: call the
>    notifier chain for NVMEM_REMOVE before releasing any resources
> - added patch 7/22 ("sunxi_sid: return -ENOMEM if kzalloc() fails")
> - fixed the return value in error path for patch 8/22 ("sunxi_sid: use
>    devm_nvmem_register())"
> - fixed the return value of devm_nvmem_unregister() in
>    patch 11/22 ("change the signature of nvmem_unregister()")
> 
> Bartosz Golaszewski (22):
>    nvmem: provide nvmem_dev_name()
>    nvmem: remove the name field from struct nvmem_device
>    nvmem: use list_for_each_entry_safe in nvmem_device_remove_all_cells()
>    nvmem: remove a stray newline
>    nvmem: check the return value of nvmem_add_cells()
>    nvmem: use kref
>    nvmem: sunxi_sid: return -ENOMEM if kzalloc() fails
>    nvmem: sunxi_sid: use devm_nvmem_register()
>    nvmem: lpc18xx_eeprom: use devm_nvmem_register()
>    nvmem: mxs-ocotp: use devm_nvmem_register()
>    nvmem: change the signature of nvmem_unregister()
>    nvmem: remove the global cell list
>    nvmem: add support for cell info
>    nvmem: resolve cells from DT at registration time
>    nvmem: add support for cell lookups from machine code
>    Documentation: nvmem: document cell tables and lookup entries
>    nvmem: add a notifier chain
>    nvmem: use SPDX license identifiers
>    nvmem: make the naming of arguments in nvmem_cell_get() consistent
>    nvmem: use EOPNOTSUPP instead of ENOSYS
>    nvmem: fix commenting style
>    nvmem: use octal permissions instead of constants

Thanks for working on this!
Nice work!

Overall the patchset looks good!

I will send these to Greg KH along with other nvmem patches sometime 
this week!



-srini

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ