Re: [RFC 7/8] fpga-region: add sysfs interface

From: Moritz Fischer
Date: Wed Feb 15 2017 - 15:54:39 EST


Hi Jason,

On Wed, Feb 15, 2017 at 12:37 PM, Jason Gunthorpe
<jgunthorpe@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Wed, Feb 15, 2017 at 12:07:15PM -0800, matthew.gerlach@xxxxxxxxxxxxxxx wrote:
>
>> The format of the meta data associated with a fpga bitstream is certainly a
>> subject on its own. HTTP style plain text is definately easy to understand
>> and more importantly it is extendable. On the other hand, it seems
>> dangerous to be doing a lot of string parsing in the kernel.
>
> It is fairly close to binary parsing.. The process is
>
> - Find the first occurance of \n\n, must be less than XX bytes
> - Memcpy that from the sg list into a linear buffer
> - Replace all \n with \0
>
> To access a key:
> - Case insensitive search for START + "Key: " or \0 + "Key: "
> - Return as a string the part after the match
>
> This isn't the sort of string parsing that typically gets you into
> trouble. If we can't code the above correctly then we will screw up
> safe binary parsing of strings too :)

Well I don't know ;-) With something fdt based we already have parsers there,
compilers are already in tree. I'll take another look at the u-boot
code, I think their
FIT (Flattened Image Tree) would be a fairly good match for what we're
trying to do.

Cheers,
Moritz