Hello Sergey, Thank you for your quick and detailed support! Here is my two cents below. On Wed, Nov 23, 2022 at 01:13:55PM +0900, Sergey Senozhatsky wrote: > On (22/11/22 12:14), Aleksey Romanov wrote: > > > IIRC that was patent in question: > > > > > > https://patentimages.storage.googleapis.com/e2/66/9e/0ddbfae5c182ac/US9977598.pdf > > > > I think the patent is talking about "mapping the virtual address" (like > > in KSM). But zram works with the "handle" abstraction, which is a boxed > > pointer to the required object. I think my implementation and the patent > > is slightly different. > > > > Also, the patent speaks of "compressing" pages. In this case, we can add > > zs_merge() function (like zs_compact()), that is, remove the merge logic > > at the allocator level. zsmalloc doesn't say anything about what objects > > it can work with. Implementation at the zsmalloc level is possible, > > though more complicated that at the zram level. > > > > I believe that we can implement at least one of the options I proposed. > > > > What do you think? > > Oh, yeah, I'm not saying that we cannot have something like that > in zram/zsmalloc, just wanted to give some historical retrospective > on this and point at some implementation details that should be > considered. It's a very curious situation, I would say. I'm not so familiar with US patent law, but I suppose it should be based on some keywords and algorithms. If we speak in terms of algorithm Alexey patch is different a little bit from suggested in the patent paper. If we care about keywords, I think by moving Alexey same page merging algorithm to zsmalloc we lose "compressing" keyword, because zsmalloc operates with "objects" only, doesn't matter if they are compressed or not. Anyway, could you please suggest who can help to understand if it's safe to use such same page merging algorithm in the upstream or not? Maybe we can ask Linux Foundation lawyers to help us, just a guess. I'm sure we shouldn't decline helpful features and optimization without complete certainty about all restrictions. -- Thank you, Dmitry