On Tue, Mar 23, 2021 at 9:33 AM Jie Deng <jie.deng@xxxxxxxxx> wrote: > > On 2021/3/23 15:27, Viresh Kumar wrote: > > > On 23-03-21, 22:19, Jie Deng wrote: > >> +static int __maybe_unused virtio_i2c_freeze(struct virtio_device *vdev) > >> +{ > >> + virtio_i2c_del_vqs(vdev); > >> + return 0; > >> +} > >> + > >> +static int __maybe_unused virtio_i2c_restore(struct virtio_device *vdev) > >> +{ > >> + return virtio_i2c_setup_vqs(vdev->priv); > >> +} > > Sorry for not looking at this earlier, but shouldn't we enclose the above two > > within #ifdef CONFIG_PM_SLEEP instead and drop the __maybe_unused ? > > > I remembered I was suggested to use "__maybe_unused" instead of "#ifdef". > > You may check this https://lore.kernel.org/patchwork/patch/732981/ > > The reason may be something like that. I usually recommend the use of __maybe_unused for the suspend/resume callbacks for drivers that use SIMPLE_DEV_PM_OPS() or similar helpers that hide the exact conditions under which the functions get called. In this driver, there is an explicit #ifdef in the reference to the functions, so it would make sense to use the same #ifdef around the definition. A better question to ask is whether you could use the helpers instead, and drop the other #ifdef. Arnd