:help autoindent : Copy indent from current line when starting a new line (typing in Insert mode or when using the \"o\" or \"O\" command). ..
smartindent is an old script that was meant, when it was written, to be a "smart" complement to autoindent. Since then, most languages have either specific indentation functions or use cindent with specific options.
Generally, smartindent shouldn't be used at all.
The following lines are usually enough to deal with indentation:
set autoindent
filetype plugin indent on
autoindent is not strictly necessary but it's good to have it when working with plaintext.