Re: [RESEND PATCH v3 02/17] media: v4l2-fwnode: Pass notifier to v4l2_async_register_fwnode_subdev()
Hi Steve, Btw. I think probably a smaller list of recipients would be just fine on the next version. On Fri, Feb 28, 2020 at 10:16:06AM -0800, Steve Longerbeam wrote: > Hi Sakari, > > On 2/25/20 7:07 AM, Sakari Ailus wrote: > > Hi Steve, > > > > On Sat, Feb 15, 2020 at 11:41:21AM -0800, Steve Longerbeam wrote: > > > Instead of allocating a notifier in v4l2_async_register_fwnode_subdev(), > > > have the caller provide one. This allows the caller to implement > > > notifier ops (bind, unbind). > > > > > > The caller is now responsible for first initializing its notifier with a > > > call to v4l2_async_notifier_init(). > > > > > > Signed-off-by: Steve Longerbeam > > Instead of improving v4l2_async_register_fwnode_subdev(), could you convert > > the users (IMX driver in this case) to call the preferred APIs instead? As > > the lines below show, v4l2_async_register_fwnode_subdev() has only two > > users left --- the other one of which is the IMX driver. After converting > > these two, we could just remove this API. > > > > See e.g. drivers/media/pci/intel/ipu3/ipu3-cio2.c and > > drivers/media/platform/omap3isp/isp.c for examples. > > Shouldn't v4l2_async_notifier_add_fwnode_remote_subdev() check for the > availability of the remote before adding it to the notifier's asd list, as > in: > > diff --git a/drivers/media/v4l2-core/v4l2-async.c > b/drivers/media/v4l2-core/v4l2-async.c > index 8bde33c21ce4..b48ed68c6c6c 100644 > --- a/drivers/media/v4l2-core/v4l2-async.c > +++ b/drivers/media/v4l2-core/v4l2-async.c > @@ -615,7 +615,7 @@ v4l2_async_notifier_add_fwnode_remote_subdev(struct > v4l2_async_notifier *notif, > int ret; > > remote = fwnode_graph_get_remote_port_parent(endpoint); > - if (!remote) > + if (!remote || !fwnode_device_is_available(remote)) > return -ENOTCONN; > > asd->match_type = V4L2_ASYNC_MATCH_FWNODE; > > > Otherwise we are back to the problem that the notifier will never complete > because the remote's driver is not probed. fwnode_graph_get_endpoint_by_id() only gives you endpoints that belong to an enabled device (unless requested otherwise). So the there's need to check the same in v4l2-fwnode.c. -- Regards, Sakari Ailus sakari.ai...@linux.intel.com ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [RESEND PATCH v3 02/17] media: v4l2-fwnode: Pass notifier to v4l2_async_register_fwnode_subdev()
Hi Sakari, On 2/25/20 7:07 AM, Sakari Ailus wrote: Hi Steve, On Sat, Feb 15, 2020 at 11:41:21AM -0800, Steve Longerbeam wrote: Instead of allocating a notifier in v4l2_async_register_fwnode_subdev(), have the caller provide one. This allows the caller to implement notifier ops (bind, unbind). The caller is now responsible for first initializing its notifier with a call to v4l2_async_notifier_init(). Signed-off-by: Steve Longerbeam Instead of improving v4l2_async_register_fwnode_subdev(), could you convert the users (IMX driver in this case) to call the preferred APIs instead? As the lines below show, v4l2_async_register_fwnode_subdev() has only two users left --- the other one of which is the IMX driver. After converting these two, we could just remove this API. See e.g. drivers/media/pci/intel/ipu3/ipu3-cio2.c and drivers/media/platform/omap3isp/isp.c for examples. Shouldn't v4l2_async_notifier_add_fwnode_remote_subdev() check for the availability of the remote before adding it to the notifier's asd list, as in: diff --git a/drivers/media/v4l2-core/v4l2-async.c b/drivers/media/v4l2-core/v4l2-async.c index 8bde33c21ce4..b48ed68c6c6c 100644 --- a/drivers/media/v4l2-core/v4l2-async.c +++ b/drivers/media/v4l2-core/v4l2-async.c @@ -615,7 +615,7 @@ v4l2_async_notifier_add_fwnode_remote_subdev(struct v4l2_async_notifier *notif, int ret; remote = fwnode_graph_get_remote_port_parent(endpoint); - if (!remote) + if (!remote || !fwnode_device_is_available(remote)) return -ENOTCONN; asd->match_type = V4L2_ASYNC_MATCH_FWNODE; Otherwise we are back to the problem that the notifier will never complete because the remote's driver is not probed. Steve --- Changes in v3: - added the missing calls to unregister/cleanup the new subdev notifiers. Reported by Rui Silva. --- drivers/media/platform/video-mux.c | 8 +++- drivers/media/v4l2-core/v4l2-fwnode.c | 11 +-- drivers/staging/media/imx/imx6-mipi-csi2.c | 7 ++- drivers/staging/media/imx/imx7-media-csi.c | 7 ++- drivers/staging/media/imx/imx7-mipi-csis.c | 9 - include/media/v4l2-fwnode.h| 12 6 files changed, 36 insertions(+), 18 deletions(-) ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] ion_system_heap: support X86 archtecture
this patch no help for x86. i have same problem on Androidx86 10. [ 846.089339] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c0-0x77c07fff], got write-back [ 846.089756] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c08000-0x77c0], got write-back [ 846.090062] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c1-0x77c17fff], got write-back [ 846.090311] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c18000-0x77c1], got write-back [ 846.091353] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c2-0x77c27fff], got write-back [ 846.094230] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c0-0x77c07fff], got write-back [ 846.095464] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c28000-0x77c2], got write-back [ 846.099184] x86/PAT: .vorbis.decoder:11142 map pfn RAM range req write-combining for [mem 0x77c08000-0x77c08fff], got write-back [ 846.100383] x86/PAT: .vorbis.decoder:11142 map pfn RAM range req write-combining for [mem 0x77c1-0x77c10fff], got write-back [ 846.103239] x86/PAT: .vorbis.decoder:11142 map pfn RAM range req write-combining for [mem 0x77c18000-0x77c18fff], got write-back [ 846.104483] x86/PAT: .vorbis.decoder:11142 map pfn RAM range req write-combining for [mem 0x77c3-0x77c33fff], got write-back [ 846.104906] x86/PAT: .vorbis.decoder:11142 map pfn RAM range req write-combining for [mem 0x77c2-0x77c20fff], got write-back [ 846.104987] x86/PAT: .vorbis.decoder:11142 map pfn RAM range req write-combining for [mem 0x77c3-0x77c33fff], got write-back [ 846.109349] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c08000-0x77c0], got write-back [ 846.109491] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c1-0x77c17fff], got write-back [ 846.109965] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c38000-0x77c3], got write-back [ 846.110136] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c4-0x77c47fff], got write-back [ 846.111691] x86/PAT: .vorbis.decoder:11142 map pfn RAM range req write-combining for [mem 0x77c0-0x77c00fff], got write-back [ 846.112631] x86/PAT: NPDecoder-CL:11141 map pfn RAM range req write-combining for [mem 0x77c3-0x77c30fff], got write-back [ 846.114647] x86/PAT: .vorbis.decoder:11142 map pfn RAM range req write-combining for [mem 0x77c34000-0x77c37fff], got write-back [ 848.562022] x86/PAT: MediaCodec_loop:11196 map pfn RAM range req write-combining for [mem 0x77c0-0x77c01fff], got write-back [ 848.562208] x86/PAT: MediaCodec_loop:11196 map pfn RAM range req write-combining for [mem 0x77c02000-0x77c03fff], got write-back [ 848.562587] x86/PAT: MediaCodec_loop:11196 map pfn RAM range req write-combining for [mem 0x77c04000-0x77c05fff], got write-back [ 848.562887] x86/PAT: MediaCodec_loop:11196 map pfn RAM range req write-combining for [mem 0x77c06000-0x77c07fff], got write-back [ 848.564765] x86/PAT: MediaCodec_loop:11196 map pfn RAM range req write-combining for [mem 0x77c08000-0x77c09fff], got write-back [ 848.567498] x86/PAT: oid.aac.decoder:11197 map pfn RAM range req write-combining for [mem 0x77c02000-0x77c02fff], got write-back [ 848.568559] x86/PAT: MediaCodec_loop:11196 map pfn RAM range req write-combining for [mem 0x77c0-0x77c01fff], got write-back [ 848.569570] x86/PAT: MediaCodec_loop:11196 map pfn RAM range req write-combining for [mem 0x77c0a000-0x77c0bfff], got write-back [ 848.571470] x86/PAT: oid.aac.decoder:11197 map pfn RAM range req write-combining for [mem 0x77c04000-0x77c04fff], got write-back [ 848.573627] x86/PAT: oid.aac.decoder:11197 map pfn RAM range req write-combining for [mem 0x77c06000-0x77c06fff], got write-back [ 848.575635] x86/PAT: oid.aac.decoder:11197 map pfn RAM range req write-combining for [mem 0x77c08000-0x77c08fff], got write-back [ 848.576566] x86/PAT: oid.aac.decoder:11197 map pfn RAM range req write-combining for [mem 0x77c0c000-0x77c0cfff], got write-back [ 848.579950] x86/PAT: oid.aac.decoder:11197 map pfn RAM range req write-combining for [mem 0x77c0-0x77c00fff], got write-back [ 848.581189] x86/PAT: oid.aac.decoder:11197 map pfn RAM range req write-combining for [mem 0x77c0d000-0x77c0dfff], got write-back [ 848.582210] x86/PAT: MediaCodec_loop:11196 map pfn RAM range req write-combining for [mem 0x77c0c000-0x77c0cfff], got write-back [ 848.582821] x86/PAT: MediaCodec_loop:11196 map pfn RAM range req write-combining for [mem 0x77c0d000-0x77c0dfff], got write-back [ 848.584509] x86/PAT: oid.aac.decoder:11197 map pfn RAM range req write-combining for [mem 0x77c0a000-0x77c0afff], got write-back [ 848.585061] x86/PAT: oid.aac.decoder:11197
[PATCH] staging: exfat: remove 'file creation modes'
The mode parameter in ffsCreateFile() and create_file() is redundant. Remove it and definition. Signed-off-by: Tetsuhiro Kohada --- drivers/staging/exfat/exfat.h | 5 + drivers/staging/exfat/exfat_core.c | 6 +++--- drivers/staging/exfat/exfat_super.c | 7 +++ 3 files changed, 7 insertions(+), 11 deletions(-) diff --git a/drivers/staging/exfat/exfat.h b/drivers/staging/exfat/exfat.h index f588538c67a8..c863d7566b57 100644 --- a/drivers/staging/exfat/exfat.h +++ b/drivers/staging/exfat/exfat.h @@ -200,9 +200,6 @@ static inline u16 get_row_index(u16 i) #define ATTR_EXTEND0x000F #define ATTR_RWMASK0x007E -/* file creation modes */ -#define FM_REGULAR 0x00 - #define NUM_UPCASE 2918 #ifdef __LITTLE_ENDIAN @@ -698,7 +695,7 @@ s32 exfat_mount(struct super_block *sb, struct pbr_sector_t *p_pbr); s32 create_dir(struct inode *inode, struct chain_t *p_dir, struct uni_name_t *p_uniname, struct file_id_t *fid); s32 create_file(struct inode *inode, struct chain_t *p_dir, - struct uni_name_t *p_uniname, u8 mode, struct file_id_t *fid); + struct uni_name_t *p_uniname, struct file_id_t *fid); void remove_file(struct inode *inode, struct chain_t *p_dir, s32 entry); s32 exfat_rename_file(struct inode *inode, struct chain_t *p_dir, s32 old_entry, struct uni_name_t *p_uniname, struct file_id_t *fid); diff --git a/drivers/staging/exfat/exfat_core.c b/drivers/staging/exfat/exfat_core.c index 941094b08dd9..ceaea1ba1a83 100644 --- a/drivers/staging/exfat/exfat_core.c +++ b/drivers/staging/exfat/exfat_core.c @@ -2172,7 +2172,7 @@ s32 create_dir(struct inode *inode, struct chain_t *p_dir, } s32 create_file(struct inode *inode, struct chain_t *p_dir, - struct uni_name_t *p_uniname, u8 mode, struct file_id_t *fid) + struct uni_name_t *p_uniname, struct file_id_t *fid) { s32 ret, dentry, num_entries; struct super_block *sb = inode->i_sb; @@ -2190,7 +2190,7 @@ s32 create_file(struct inode *inode, struct chain_t *p_dir, /* fill the directory entry information of the created file. * the first cluster is not determined yet. (0) */ - ret = exfat_init_dir_entry(sb, p_dir, dentry, TYPE_FILE | mode, + ret = exfat_init_dir_entry(sb, p_dir, dentry, TYPE_FILE, CLUSTER_32(0), 0); if (ret != 0) return ret; @@ -2204,7 +2204,7 @@ s32 create_file(struct inode *inode, struct chain_t *p_dir, fid->dir.flags = p_dir->flags; fid->entry = dentry; - fid->attr = ATTR_ARCHIVE | mode; + fid->attr = ATTR_ARCHIVE; fid->flags = 0x03; fid->size = 0; fid->start_clu = CLUSTER_32(~0); diff --git a/drivers/staging/exfat/exfat_super.c b/drivers/staging/exfat/exfat_super.c index 6f3b72eb999d..708398265828 100644 --- a/drivers/staging/exfat/exfat_super.c +++ b/drivers/staging/exfat/exfat_super.c @@ -617,8 +617,7 @@ static int ffsLookupFile(struct inode *inode, char *path, struct file_id_t *fid) return ret; } -static int ffsCreateFile(struct inode *inode, char *path, u8 mode, -struct file_id_t *fid) +static int ffsCreateFile(struct inode *inode, char *path, struct file_id_t *fid) { struct chain_t dir; struct uni_name_t uni_name; @@ -641,7 +640,7 @@ static int ffsCreateFile(struct inode *inode, char *path, u8 mode, fs_set_vol_flags(sb, VOL_DIRTY); /* create a new file */ - ret = create_file(inode, &dir, &uni_name, mode, fid); + ret = create_file(inode, &dir, &uni_name, fid); #ifndef CONFIG_STAGING_EXFAT_DELAYED_SYNC fs_sync(sb, true); @@ -1834,7 +1833,7 @@ static int exfat_create(struct inode *dir, struct dentry *dentry, umode_t mode, pr_debug("%s entered\n", __func__); - err = ffsCreateFile(dir, (u8 *)dentry->d_name.name, FM_REGULAR, &fid); + err = ffsCreateFile(dir, (u8 *)dentry->d_name.name, &fid); if (err) goto out; -- 2.25.1 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re:Funds
Hello, My name is Reem Ebrahim Al-Hashimi, I am the "Minister of state and Petroleum" also "Minister of State for International Cooperation" in UAE. I write to solicit for your partnership in claiming of $47Million from a Financial Home in Cambodia. The aforementioned fund $47 Million is my share percentage from my Oil/Gas deal with Cambodia/Vietnam Government within 2013/2014, influentially I don't want my government to know about the fund. If this proposal interests you, let me know by sending me an email and I will send to you detailed Information on how this business would be successfully transacted. Be informed that nobody knows about the secret of this fund except me and I know how to carry out the entire transaction. Furthermore, as a Minister of Petroleum, I am not allowed to be part of such a deal, because it's against my country's professional practice policy. So I am compelled to ask that you will stand on my behalf and receive this fund into any account that is solely controlled by you. I will compensate you with 30% of the total amount involved as gratification for being my partner in the transfer. Reply to my private email as stated: reemal-hash...@yandex.com Regards, Reem Ebrahim Al-Hashimi ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
changement de situation
Bonjour, Sans aucun pré-requis, découvrez notre formation pour changer de vie, devenez Praticien, installez vous à votre compte et donnez du sens à votre vie ... Médicale ou Thérapeutique, l'Hypnose, cette nouvelle façon de soulager et rétablir l'harmonie des personnes en passant par l'inconscient, intéresse les professionnels des thérapies alternatives et les professionnels de santé qui l'utilisent désormais au quotidien dans les établissements de soins, mais également les particuliers désireux d'en savoir plus sur ces techniques de soins et de mieux-tre innovantes et très efficaces. Aidez les autres, tout en vous installant dans une situation confortable et pleine d'avenir. Quelle que soit votre situation actuelle, nous pouvons vous former aux métiers de la Thérapie Alternative dans le but de vous installer à votre compte tout en aidant les autres, quel que soit votre âge et sans aucun pré-requis. Dans notre École, rapidement et efficacement vous apprendrez les méthodes et les techniques utilisées pour aider les personnes à se sentir mieux, se débarrasser d'une phobie, prendre confiance, arrter de fumer, perdre du poids ... - Un nouveau métier pour une nouvelle vie Merci de votre attention et à bientôt Clotilde www.cours.ovh Tél : 01 84 19 P.S. j'espère ne pas vous avoir importuné avec mon mail, pour ne plus avoir de mails de ma part, vous pouvez simplement répondre à ce mail en mettant le mot stop dans l'objet. Merci de votre compréhension ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: BUG: unable to handle kernel paging request in ion_heap_clear_pages
This bug is marked as fixed by commit: kasan: support vmalloc backing of vm_map_ram() But I can't find it in any tested tree for more than 90 days. Is it a correct commit? Please update it by replying: #syz fix: exact-commit-title Until then the bug is still considered open and new crashes with the same signature are ignored. ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel