2006-10-20 00:08:53 +04:00
|
|
|
#include <linux/highmem.h>
|
|
|
|
|
|
|
|
static inline void *kmap_skb_frag(const skb_frag_t *frag)
|
|
|
|
{
|
|
|
|
#ifdef CONFIG_HIGHMEM
|
|
|
|
BUG_ON(in_irq());
|
|
|
|
|
|
|
|
local_bh_disable();
|
|
|
|
#endif
|
2011-11-25 19:14:39 +04:00
|
|
|
return kmap_atomic(skb_frag_page(frag));
|
2006-10-20 00:08:53 +04:00
|
|
|
}
|
|
|
|
|
|
|
|
static inline void kunmap_skb_frag(void *vaddr)
|
|
|
|
{
|
2011-11-25 19:14:39 +04:00
|
|
|
kunmap_atomic(vaddr);
|
2006-10-20 00:08:53 +04:00
|
|
|
#ifdef CONFIG_HIGHMEM
|
|
|
|
local_bh_enable();
|
|
|
|
#endif
|
|
|
|
}
|