···230230231231 return kmap(buf->page);232232}233233+EXPORT_SYMBOL(generic_pipe_buf_map);233234234235/**235236 * generic_pipe_buf_unmap - unmap a previously mapped pipe buffer···250249 } else251250 kunmap(buf->page);252251}252252+EXPORT_SYMBOL(generic_pipe_buf_unmap);253253254254/**255255 * generic_pipe_buf_steal - attempt to take ownership of a &pipe_buffer···281279282280 return 1;283281}282282+EXPORT_SYMBOL(generic_pipe_buf_steal);284283285284/**286285 * generic_pipe_buf_get - get a reference to a &struct pipe_buffer···297294{298295 page_cache_get(buf->page);299296}297297+EXPORT_SYMBOL(generic_pipe_buf_get);300298301299/**302300 * generic_pipe_buf_confirm - verify contents of the pipe buffer···313309{314310 return 0;315311}312312+EXPORT_SYMBOL(generic_pipe_buf_confirm);316313317314/**318315 * generic_pipe_buf_release - put a reference to a &struct pipe_buffer···328323{329324 page_cache_release(buf->page);330325}326326+EXPORT_SYMBOL(generic_pipe_buf_release);331327332328static const struct pipe_buf_operations anon_pipe_buf_ops = {333329 .can_merge = 1,