В чем разница между ч / б __raw_readl / __ raw_writel и readl / writel в ядре Linux? - PullRequest
11 голосов
/ 22 марта 2012

В чем разница ч / б __raw_readl/__raw_writel и readl/writel в ядре Linux?Говорят, что readl/writel безопаснее __raw_readl/__raw_writel, тогда почему мы все еще используем __raw_readl/__raw_writel?

При каких обстоятельствах мы должны использовать это: __raw_readl/__raw_writel или readl/writel?

1 Ответ

9 голосов
/ 22 марта 2012

Это кажется случаем, что

  • Необработанный обозначает собственный порядок байтов, а не необработанный - означает little-endian
  • альтернативные префиксы __ не включают в себя барьеры памяти

См. это обсуждение LKML , а также комментарии в linux / arch / arm / include / asm / io.h

...